[英]How to access an ArrayList from another class
我正在尝试找到一种方法将内容从我的类中的ArrayList复制到我目前正在使用的类中。
这就是我的代码当前在类中我希望将内容传输到的方式:
MainActivity MA = new MainActivity();
ArrayList<String> deletedValues = new ArrayList<String>();
for(String item :MA.deletedItems){
deletedValues.add(item);
}
此外,如果重要,MainActivity中的ArrayList具有私有修饰符
上面的代码不会导致任何错误,但不会将任何值返回给新的ArrayList,deletedValues。
您可以在任何包含arraylist的类中创建get方法,如下所示:
public ArrayList getDeletedValues() {
return deletedValues;
}
这就是您通常访问私有变量的方式。
看看Getters and Setters
设计模式。 这意味着您可以将变量设置为私有,同时以您可以控制的方式为其他类提供访问权限。 通常,使用getters and setters
的典型类看起来有点像这样:
public class MyClass {
private int myInt;
// Setter
public void setMyInt(int value) {
myInt = value;
}
// Getter
public int getMyInt() {
return myInt;
}
}
在您提供的上下文中实现时,您可以期望您的代码看起来与此类似, MainActivity
类中的getter和setter类似于上面的示例。
MainActivity MA = new MainActivity();
ArrayList<String> deletedValues = new ArrayList<String>();
for(String item :MA.getDeletedItems()){
deletedValues.add(item);
}
但是,我将借此机会指出,除了创建MainActivity
类的新实例之外,您可能会发现通过构造函数将MainActivity
类的当前实例传递给您正在使用的类更有益或类似的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.