[英]how to add a list of object into another list
我有一个PesananDealer的对象。 它包含这些变量。
private String idDealer;
private int[] motor = new int[4];
public PesananDealer() {
}
public PesananDealer(String idDealer, int[] motor) {
this.idDealer = idDealer;
this.motor = motor;
}
public String getIdDealer() {
return idDealer;
}
public void setIdDealer(String idDealer) {
this.idDealer = idDealer;
}
public int[] getMotor() {
return motor;
}
public void setMotor(int[] motor) {
this.motor = motor;
}
我也有卡车的对象。 它包含这些变量。
public int ID;
public List<PesananDealer> listPesananDealer = new ArrayList<PesananDealer>();
public int kapasitas;
public String[] rute;
public Truck() {
}
public Truck(int ID, List<PesananDealer> listPesananDealer, int kapasitas) {
this.ID = ID;
this.listPesananDealer = listPesananDealer;
this.kapasitas = kapasitas;
}
public int biaya;
public int getID() {
return ID;
}
public void setID(int ID) {
this.ID = ID;
}
public String[] getRute() {
return rute;
}
public void setRute(String[] rute) {
this.rute = rute;
}
public List<PesananDealer> getListPesananDealer() {
return listPesananDealer;
}
public void setListPesananDealer(List<PesananDealer> listPesananDealer) {
this.listPesananDealer = listPesananDealer;
}
public void addPesanan(PesananDealer a) {
listPesananDealer.add(a);
}
public int getKapasitas() {
return kapasitas;
}
public void setKapasitas(int kapasitas) {
this.kapasitas = kapasitas;
}
public int getBiaya() {
return biaya;
}
public void setBiaya(int biaya) {
this.biaya = biaya;
}
现在我想制作卡车清单并插入数据。
List<PesananDealer> list = new ArrayList<PesananDealer>() {
{
for (int i = 0; i < dealer.length; i++) {
add(new PesananDealer(dealer[i], arrays[i]));
}
}
};
List<Truck> list2 = new ArrayList<Truck>(){
{
for (int i = 0; i < 5; i++) {
add(new Truck(i,list,kapasitas[i]));
}
}
};
我可以通过这样做将列表添加到list2中吗? 如何打印卡车清单及其所有数据?
我的所有代码
public static void main(String[] args) {
int[][] arrays = {{3, 4, 5, 6},
{22, 12, 2, 2},
{1, 1, 3, 5},
{6, 5, 2, 1},
{14, 2, 4, 2}};
String[] dealer = {"B", "C", "D", "E", "F"};
String [] rute = new String [10];
int [] kapasitas = {34, 32, 36, 32,30};
List<PesananDealer> list = new ArrayList<PesananDealer>() {
{
for (int i = 0; i < dealer.length; i++) {
add(new PesananDealer(dealer[i], arrays[i]));
}
}
};
List<Truck> list2 = new ArrayList<Truck>(){
{
for (int i = 0; i < 5; i++) {
add(new Truck(i,list,kapasitas[i]));
}
}
};
for (Truck listTruck : list2) {
System.out.println("Mobil ke "+listTruck.getID()+" memiliki kapasitas "+listTruck.getKapasitas());
for (int i = 0; i < 5; i++) {
System.out.println(listTruck.listPesananDealer.get(i));
}
}
}
所以,我的理解是,你一直在询问是否可以将list
添加到list2
以及list
是否已初始化。 我对吗? 所以是的,你可以这样说,因为你的代码初始化程序将由编译器放到构造函数中。 变量按照它们在代码中声明的顺序进行初始化,因此list
将在放入list2
时初始化。 但请注意,您在每个Track
使用相同的list
,因此如果Track
更改list
,它将在每个Track
更改
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.