gpt4 book ai didi

java - 从另一个类访问列表

转载 作者:行者123 更新时间:2023-12-02 09:56:13 25 4
gpt4 key购买 nike

如何将两个单独的类中的一个数组添加到另一个数组,然后从主类访问它?打印时总列表显示[],但第二类显示所有名称。

public class Main {

private static Plane fly = new Plane();
private static Secondclass sec = new Secondclass();

public static void main(String[] args) {

sec.addPassenger("John");
sec.addPassenger("Fatso");
sec.addPassenger("Lisa");
sec.addPassenger("Mike");
sec.addPassenger("Randy");
sec.addPassenger("Jonathan");

System.out.println("Total list is "+fly.getTotalList());
System.out.println("Second class is " + sec.getPassengerNames());
}
}
________________________________________

public class Plane {
private Secondclass sec;
private ArrayList<String> totalList;

public Plane() {
this.totalList = new ArrayList<String>();
}

public void addTotalList() {
this.totalList.addAll(sec.getPassengerNames());
}

public ArrayList<String> getTotalList() {
return totalList;
}

}
________________________________________

public class Secondclass{
private ArrayList<String> passengerNames;

public Secondclass() {
this.passengerNames = new ArrayList<String>();
}

public ArrayList<String> getPassengerNames() {
return passengerNames;
}

public void addPassenger(String name){
passengerNames.add(name);
}
}

最佳答案

您的代码中缺少两行重要的行。

  • 编写一个构造函数 Plane,并将对象 SecondClass 的引用作为参数。
  • 在 sec 对象中添加值后,创建一个构造函数,并将 sec 对象作为参数传递。
  • 调用plane.addTotalList()

    import java.util.ArrayList;

    public class Main {
    private static Plane fly;
    private static Secondclass sec = new Secondclass();

    public static void main(String[] args) {

    sec.addPassenger("John");
    sec.addPassenger("Fatso");
    sec.addPassenger("Lisa");
    sec.addPassenger("Mike");
    sec.addPassenger("Randy");
    sec.addPassenger("Jonathan");

    fly = new Plane(sec);
    fly.addTotalList();

    System.out.println("Total list is " + fly.getTotalList());
    System.out.println("Second class is " + sec.getPassengerNames());
    }
    }

    class Plane {
    private Secondclass sec;
    private ArrayList<String> totalList;

    public Plane(Secondclass sec) {
    this.sec = sec;
    this.totalList = new ArrayList<String>();
    }

    public void addTotalList() {
    this.totalList.addAll(sec.getPassengerNames());
    }

    public ArrayList<String> getTotalList() {
    return totalList;
    }

    }

    class Secondclass {
    private ArrayList<String> passengerNames;

    public Secondclass() {
    this.passengerNames = new ArrayList<String>();
    }

    public ArrayList<String> getPassengerNames() {
    return passengerNames;
    }

    public void addPassenger(String name) {
    passengerNames.add(name);
    }
    }`

    输出:

总列表是[约翰、胖子、丽莎、迈克、兰迪、乔纳森]第二类是[约翰,胖子,丽莎,迈克,兰迪,乔纳森]

关于java - 从另一个类访问列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55987418/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com