java向數組裏添加一個元素怎麼添加,這兒總結有三種方法:
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一份進新數組,並把要添加的元素添加進新數組即可。
數組的初始化
你可以在聲明數組的同時進行初始化(靜態初始化),也可以在聲明以後進行初始化(動態初始化)。例如:
// 靜態初始化
// 靜態初始化的同時就爲數組元素分配空間並賦值
int intArray[] = {1,2,3,4};
String stringArray[] = {"微學苑", "http://www.weixueyuan.net", "一切編程語言都是紙老虎"};
// 動態初始化
float floatArray[] = new float[3];
floatArray[0] = 1.0f;
floatArray[1] = 132.63f;
floatArray[2] = 100F;