我正在尝试使用 Java 执行以下操作,这是否允许?
import java.util.ArrayList;
class Apple {
void makeAppleArrayList() {
ArrayList<String> appleArrayList = new ArrayList<String>();
appleArrayList.add("apple");
Banana b = new Banana();
b.copyAppleArrayList(appleArrayList);
}
}
import java.util.ArrayList;
class Banana {
ArrayList<String> bananaArrayList = new ArrayList<String>();
void copyAppleArrayList(ArrayList<String> arrayList) {
bananaArrayList = arrayList;
}
}
最佳答案
好吧,与其在苹果中创建一个香蕉实例,不如在香蕉中创建一个苹果实例,而只是这样做:
Apple apple = new Apple();
bananaArrayList = apple.appleArrayList;
因为它是在函数内部创建的,所以您可以像这样在构造函数中初始化它:
public class Apple{
public ArrayList<Perk> appleArrayList;
public PerkGenerator() {
this.appleArrayList = new ArrayList();
如果您这样做,则无需在函数内部执行。但是,如果您仍然想在函数内部执行此操作。只需保留该代码即可。在 apple 中执行此操作:
public ArrayList makeApple(){
ArrayList apples = new ArrayList();
return apples;
然后在香蕉里面你这样做:
bananaArrayList = apple.makeApple
这是可行的,因为 make apple 函数返回一个数组列表 :) 以下是有关从方法返回值的一些信息 :) http://docs.oracle.com/javase/tutorial/java/javaOO/returnvalue.html
希望我能帮上忙:)
关于java - 给一个arraylist另一个arraylist JAVA的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20534088/