[英]How to get the return value of a method?
我是创建单位转换器的新手。 我有两个类,我在第一类中有这个方法:
public String cardName;
public String StartConversion(View view){
Intent intent = new Intent(this, ConversionActivity.class);
startActivity(intent);
return cardName = view.getResources().getResourceEntryName(view.getId());
}
我想在我的第二堂课中获取并使用 cardName 的值,所以:
MainActivity myObj = new MainActivity();
Toast.makeText(getApplicationContext(), "cardName: " + myObj.cardName, Toast.LENGTH_LONG).show();
但这不起作用。 我知道局部变量只能在它们的范围内访问,所以我这样做了。 他们说只有将其设为类成员才能访问它,这确实有效,但它具有 NULL 值。
通常,您会 a) 创建一些类,b) 将类成员设为“私有”,然后 c) 使用getter 和 setter 方法公开这些成员。
例子:
public class MyClass {
private String cardName;
public void StartConversion(View view){
Intent intent = new Intent(this, ConversionActivity.class);
startActivity(intent);
cardName = view.getResources().getResourceEntryName(view.getId());
}
public getCardName() { return cardName; }
}
然后任何想要访问“cardName”的类都会调用:
String cardName = myObject.getCardName();
在此处查看更多详细信息: Java Getter 和 Setter 教程,Nam Ha Minh
有一系列方法可以解决您的问题。 例如,
首先- StartConversion 的方法用于设置卡片名称,然后提供一个 getter 方法来访问。
第二 - 只使用 StartConversion 的方法来返回你想要的。 但是您应该更改代码以return view.getResources().getResourceEntryName(view.getId());
, 删除cardName =
。 外部类应该被称为您想要访问的方法。
一句话,要么调用方法直接访问,要么给个setter再用getter访问。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.