ArratList 類:存放同一資料類型容器(隻能為引用資料類型,因實際其内部存放的是位址)
1.導入其所在包 import java.util.ArratList
2.建立對象 ArrayList<E> 對象名=new ArrayList<>();
E:泛型資料類型,指定對象名中存放指定類型的資料,不可省略,需為引用資料類型
3.使用 即對象名.方法(參數可能有可能無)
注意:當列印對象名時,非位址,而是一個如同python中清單一般,存放的是各個資料[元素1,元素2],若無資料,即空清單[]
4。ArrayList的常用方法
對象名.add(元素) //向容器中添加指定資料類型的元素 傳回值為boolean類型,可不用接受傳回值,因為都會成功添加元素(尾部添加)
對象名.get(i) //獲得容器中下标為i的元素,傳回值是容器中存儲的資料類型
對象名.size() //獲得容器中元素的個數
對象名.remove(i) //移除下标為i的元素,傳回值是删除的資料元素
5.倘若想要用ArrayList存儲整形,浮點形,char類型,而<E>隻能為引用資料類型,如何?Java為我們将基本資料類型包裝成了類,間接變成引用
int------>Integer ArrayList<Integer> li=new Arraylist<>();//即存放整數元素
char---->Character ArrayList<Character> li=new Arraylist<>();//即存放char元素
float--->Float, byte--->Byte, double--->Double, long--->Long //隻有int和char包裝類名字特殊,其餘大寫即可
三個Demo熟悉其使用
//随機生成數加入到容器中(Random與ArrayList)
1 import java.util.ArrayList;
2 import java.util.Random;
3 /*随機生成範圍為[1,33]的數字加入到動态數組中*/
4 public class DemoArrayList {
5 public static void main(String[] args) {
6 Random r=new Random();
7 ArrayList<Integer> list=new ArrayList<>();
8 for (int i = 0; i < 6; i++) {
9 list.add(r.nextInt(33)+1);
10 }
11 for(int i=0;i<list.size();i++){
12 System.out.println(list.get(i));
13 }
14 }
15 }
//定義方法輸出容器以指定格式輸出{元素@元素@元素。。。元素}
1 import java.util.ArrayList;
2
3 //定義方法輸出ArrayList以{元素@元素}格式輸出
4 public class DemoSecond {
5 public static void main(String[] args) {
6 ArrayList<String> li=new ArrayList<>();
7 mymethod(li);
8 }
9 public static void mymethod(ArrayList<String> s){
10 s.add("hello");
11 s.add("da");
12 s.add("nhao");
13 System.out.print("{");
14 for(int i=0;i<s.size();i++){
15 if(i==s.size()-1){
16 System.out.print(s.get(i)+"}");
17 }
18 else
19 System.out.print(s.get(i)+"@");
20 }
21 }
22 }
//将大集合中的20個随機數,其中是偶數的放入到小集合中
1 import java.util.ArrayList;
2 import java.util.Random;
3 //定義方法将大集合中20個随機數,其中是偶數的放入小集合中
4 public class DemoTest {
5 public static void main(String[] args) {
6 ArrayList<Integer> biglist=new ArrayList<>();
7 ArrayList<Integer> smalist=new ArrayList<>();
8 mythod(biglist,smalist);
9 }
10 public static void mythod(ArrayList<Integer> a,ArrayList<Integer> b){
11 Random r=new Random();
12 for (int i = 0; i < 20; i++) {
13 int digit=r.nextInt(50);
14 a.add(digit);
15 if(a.get(i)%2==0){
16 b.add(digit);
17 }
18 }
19 System.out.println(a);
20 System.out.println(b);
21 }
22 }