2016-12-15 100 views
-1

字符串数组我有多个ArrayList的是这样的:Java中创建多个ArrayList中

arraylist 
arrayList.add(product1); 
arrayList.add(product2); 
arrayList.add(product3); 
arrayList.add(product4); 
. 
. 
. 
. 
arrayList.add(productn); 


arraylist2 
arrayList2.add(name1); 
arrayList2.add(name2); 
arrayList2.add(name3); 
arrayList2.add(name4); 
. 
. 
. 
arrayList2.add(namen); 


    arraylist3 
arrayList3.add(id1); 
arrayList3.add(id2); 
arrayList3.add(id3); 
arrayList3.add(id4); 
. 
. 
. 
arrayList3.add(idn); 

我想创建数组的字符串的ArrayList的ArrayList中

结合上述 与字符串的索引,使这样的事情

string[1] = {product1,name1,id1 } 
string[2] = {product2,name2,id2 } 
. 
. 
. 
string[n] = {productn,namen,idn } 

任何想法如何做到这一点? 对不起,之前 ,并提前感谢

回答

0

做一个类,然后该类的实例/对象的数组。下面是一个例子,

public class Product{ 
    String name; 
    String id; 
    public Product(String name, String id){ //constructor for the object 
     this.name = name; 
     this.id = id; 
    } 
} 

然后在你的主要方法,创建Product类型的数组和Product到阵列中添加的情况下,

Product[] products = new Product[10]; 
products[0] = new Product("cheese", "0"); 
System.out.println(products[0].name + " " + products[0].id); 

你可以根据自己的喜好,比如你可以编辑Product类,通过添加除nameid以外的更多实例字段,调整数组大小,将数组更改为数组列表等。

+0

谢谢!帮助我很多 – newbieandroid

+0

@newbieandroid没问题,祝你好运! –

0

您是否指这样的事?

int size = 10; 
List<String> arr1 = new ArrayList<>(); 
List<String> arr2 = new ArrayList<>(); 
List<String> arr3 = new ArrayList<>(); 
String[] string = new String[size]; 
for (int i = 0; i < size; i++) { 
    string[i] = arr1.get(i) + arr2.get(i) + arr3.get(i); 
} 
0

您可以在一个循环中遍历它们并使用它创建一个对象。
我们需要创建一个类

// The data type will change based on the data type you have them as 

public class MyObject { 
    private Product product; 
    private Name name; 
    private Id id; 

    public MyObject(Product p, Name n, Id i) { 
     product = p; 
     name = n; 
     id = i; 
    } 
    // All Getters & toString() 
} 

现在的循环:

List< MyObject> myList = new ArrayList <MyObject>(); 
for (int i=0 ; i < arrayList || i < arrayList2 || i < arrayList3) { 
    myList.add(new MyObject(arrayList.get(i),arrayList2.get(i),arrayList3.get(i))) 
} 

注意您可以覆盖你的类的toString方法来得到你想要的方式输出。 EG:

public String toString() { 
    return "Name: '" + this.name + "', ID: '" + this.id + "', Product: '" + this.product + "'"; 
} 
0
public static void main(String[] args) { 
    List<String> arrayList = new ArrayList<>(); 
    arrayList.add("product1"); 
    arrayList.add("product2"); 
    arrayList.add("product3"); 
    List<String> arrayList2 = new ArrayList<>(); 
    arrayList2.add("name1"); 
    arrayList2.add("name2"); 
    arrayList2.add("name3"); 
    List<String> arrayList3 = new ArrayList<>(); 
    arrayList3.add("id1"); 
    arrayList3.add("id2"); 
    arrayList3.add("id3"); 

    int n = arrayList.size(); 
    List<String[]> productlist = new ArrayList<>(); 
    for(int i = 0; i< n;i++){ 
     productlist.add(new String[]{arrayList.get(i),arrayList2.get(i),arrayList3.get(i)}); 
     System.out.println(Arrays.toString(productlist.get(i))); 
    } 
}