问题描述
- 怎么样能将两个数组和在一起?
- 我有两个大小相等的数组。数组1包含10个名字,数组2包含他们的电话号码。我想要将名字和电话号码和到一个数组中,应该怎么做?
解决方案
你可以用.addAll()
将第二个列表中的元素加到第一个中:
array1.addAll(array2);
如果你是想要将名字和电话号码以字符串的形式都放到一个新的数组中,你可以遍历列表,然后从第二个列表中将内容迁过去。
Something like this:if (array1.length() != array2.length()) { // Too many names or too many numbers // Fail}ArrayList<String> array3 = new ArrayList<String>(); // Make a new listfor (int i = 0; i < array1.length(); i++) { // Loop through every name/phone number combo array3.add(array1.get(i) + "" "" + array2.get(i)); // Concat the two and add it}
如果你的数组是像下边这样:
array1 : [""a""b""c""]array2 : [""1""2""3""]
你得到的数组是这样的:
array3 : [""a 1""b 2""c 3""]
解决方案二:
我猜测你是需要一个二维数组?
如果是这样的话普通的新建数组并迭代这种方式就不说了.
用一个工具类Array来操作
public static void main(String[] args) { String[] nameArray = new String[]{""张三""李四""赵武""}; long[] phoneNumArray = new long[]{11111111111l22222222222l22222222222l}; Object[] mixArray = new Object[]{nameArray phoneNumArray}; for (int i = 0 j = Array.getLength(mixArray[0]); i < j; i++) { System.out.println(Array.get(mixArray[0] i) +""的电话号码为:"" + Array.getLong(mixArray[1] i)); }}
这样输出的结果为:
张三的电话号码为:11111111111李四的电话号码为:22222222222赵武的电话号码为:22222222222
解决方案三:
ArrayList<String> resultList = new ArrayList<String>();resultList.addAll(arrayList1);resultList.addAll(arrayList2);
解决方案四:
将一个数组加到第二个数组中是这样:
Arraylist1.addAll(Arraylist2);
如果你想要从两个已经存在的数组中创建新的数组,这样:
ArrayList<String> arraylist3=new ArrayList<String>();arraylist3.addAll(Arraylist1); // add first arraylistarraylist3.addAll(Arraylist2); // add Second arraylist
时间: 2024-11-05 22:59:03