我希望将两个arrayList
列表合并为一个
list1和list 2包含
list1
:啊,山姆,公羊
list2
:1 1 0
我想把list1的第一个位置放在第一个位置列表1
例如:想要致电(ram,0) (ahm,1)
等等......?
ArrayList<String> list1=new ArrayList<String>();
ArrayList<String> list2=new ArrayList<String>();
答案 0 :(得分:4)
所以你想把键和值放在一个列表中?然后,您需要HashMap
才能获得此信息:
HashMap<String, Integer> myMap = new HashMap<String, Integer>();
for(int i = 0; i < list1.size(); i++){
myMap.put(list1.get(i), list2.get(i));
}
修改:因此您希望将每个列表的两个元素放入一个新列表中,String
格式为(x,y)
,然后您需要执行以下操作:
ArrayList<String> list3 = new ArrayList<String>();
for(int i = 0; i < list1.size(); i++){
// if list2 contains string represented with numbers
String str = list1.get(i) + "," + list2.get(i);
// if list2 contains integers
String str = list1.get(i) + "," + String.valueOf(list2.get(i));
list3.add(str);
}
答案 1 :(得分:1)
我不知道你的意思,但可能是这样的:(假设你有两个相同大小的名单)
for(int i=0; i < list1.size(); i++) {
list1.get(i) = list1.get(i) + "," + list2(i);
}
但是,如果我理解正确,您可能需要HashMap
:
HashMap<String, Integer> map = new HashMap<String, Integer>();
for(int i = 0; i < list1.size(); i++){
map.put(list1.get(i), list2.get(i));
}
对于真正的合并,请使用list1.addAll(list2);
答案 2 :(得分:1)
你可以写一个成功的方法:
String getPair( int position )
{
return list1.get( position ) +","+ list2.get( position );
}