向數組里添加一個元素怎么添加,這兒總結有三種方法:
1、一般數組是不能添加元素的,因為他們在初始化時就已定好長度了,不能改變長度。
但有個可以改變大小的數組為ArrayList,即可以定義一個ArrayList數組,然后用add(element)方法往里添加元素即可,還可add(index,element)往指定下標處添加元素;例子如下:
List<Integer> list=new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(2,4);
System.out.println(list);
打印結果: [1, 2, 4, 3]
2、思路為先把array轉化為list,用list的add()方法添加元素,再把list轉化為array。
但這兒會有一個陷阱盲區,在把array轉化為list的過程中,使用的asList()方法會返回一個final的,固定長度的ArrayList類,並不是java.util.ArrayList,直接這樣利用它進行add()或remove()是無效的。
List<Integer> list=new ArrayList<Integer>();
list=Arrays.asList(sz);
list.add(5);
那應該怎么做呢,在定義list的時候就直接對array進行轉化,代碼如下:
(注意這兒Array類型是包裝類,若是一般數據類型記得轉化,轉化參考我其他博客文章。)
//如 List<String> list=new ArrayList<String>();
// list=Arrays.asList(str);
//這樣不行,須如下:
Integer []sz={3,2};
List<Integer> list=new ArrayList(Arrays.asList(sz));//**須定義時就進行轉化**
list.add(1,5);
Integer[] nsz=new Integer[list.size()];
list.toArray(nsz);
System.out.println(Arrays.toString(nsz));
結果輸出為:[3, 5, 2]
3、第三個方法思路為創建一個新數組,新數組的大小為舊數組大小+1,把舊數組里的元素copy一份進新數組,並把要添加的元素添加進新數組即可。
————————————————
版權聲明:本文為CSDN博主「newy」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_33958946/article/details/82710172