java - 给一个arraylist另一个arraylist JAVA的值

标签 java arrays methods arraylist set

我正在尝试使用 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/

相关文章:

java - 如何使用 Java 对 URL 进行编码

java - Libgdx 相机/缩放问题

c - 未定义的行为是否改变了文字数组?

c++ - 为什么静态数组成员变量在调用对象的实例后不显示任何内容?

r - 如何在 R 中创建不打印属性(不复制对象)的打印方法?

java - 在 Java 8 中编译时存储某些类的方法参数名称

java - Java8 中不合逻辑的类型推断

java - 用定制的任务调度程序替换 Java 中的任务调度程序

c - 在 C 中用 '%20' 替换空格

c - 用 C 读/写多数组数据结构