Java ArrayList学习
ArrayList的添加方法
- add()添加
package Demo1.test2; import java.util.ArrayList; /* 数组的长度不可以发生改变,但是ArrayList集合的可以长度可以随意改变 对于ArrayList来说,有一个尖括号<E>代表泛型 泛型,就是装在集合当中所有元素,都是统一的类型 注:泛型只能是引用类型,不能是基本类型 注意: 对于ArrayList集合来说,直接打印得到的不是地址值,而是内容 如果内容为空,得到空的中括号[] */ public class Demo1 { public static void main(String[] args) { //创建一个ArrayList集合,集合名称为list,里面装的是String字符串类型的数据 ArrayList<String> list = new ArrayList<>(); System.out.println(list); //向集合中添加数据,调用add()方法 list.add("AAA"); System.out.println(list); list.add("BBB"); list.add("CCC"); System.out.println(list); } }
- ArrayList的常用的方法
package Demo1.test3; import java.util.ArrayList; /* ArrayList的常用方法: public boolean add(E e):向集合当中添加元素,参数的类型和泛型一致 public E get(int index):从集合当中获取元素,参数是索引编导,返回 值 就是对应位置的元素 public E remove(int index):从集合当中删除元素,参数是索引编导,返回值就是被删除的元素 public int size(),获取集合的尺寸的长度,返回值就是集合中包含的元素个数 */ public class Demo2basemethod { public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); System.out.println(list); //向集合当中添加元素 boolean success = list.add("AAA"); System.out.println(list); System.out.println("添加是否成功"+success); list.add("BBB"); list.add("CCC"); list.add("DDD"); System.out.println(list); //从集合当中获取元素,get,索引值从0开始 String name = list.get(2); System.out.println("索引的2号位置的值为"+name); //从集合当中删除元素:remove,索引值从0开始。 String removed = list.remove(1); System.out.println("被删除的人是:"+removed); System.out.println(list); //获取集合长度尺寸(元素个数) int size = list.size(); System.out.println("集合长度"+size); //遍历 for (int i = 0; i <list.size() ; i++) { System.out.println(list.get(i)); } } }
- ArrayList存储基本数据类型
/* 如果希望向集合当中存储基本类型数据,必须使用基本类型对应的包装类 基本类型 包装类(引用类型,包装类都位于java.lang包下) byte Byte short Short int Integer [特殊] long Long float Float double Double char Character [特殊] boolean Boolean */ public class Test{ public static void main(String[] args){ ArrayList<Integer> listA = new ArrayList<>(); listA.add(100); listB.add(220); } } /* 自动装箱:基本类型-->包装类型 自动拆箱:包装类型-->基本类型 */
- 小练习
-
随机存储
package Demo1; import java.util.ArrayList; import java.util.Random; public class test4 { public static void main(String[] args) { ArrayList<Integer> list = new ArrayList<>(); Random ran = new Random(); for (int i = 0; i <6 ; i++) { int num = ran.nextInt(33)+1; list.add(num); } //遍历 for (int i = 0; i <list.size() ; i++) { System.out.println(list.get(i)); } } }
-
存储自定义
package Demo1.test4; import java.util.ArrayList; public class test4 { public static void main(String[] args) { ArrayList<Student> list = new ArrayList<>(); Student t1 = new Student("AAA",10); Student t2 = new Student("BBB",20); Student t3 = new Student("CCC",40); Student t4 = new Student("DDD",50); list.add(t1); list.add(t2); list.add(t3); list.add(t4); for (int i = 0; i <list.size() ; i++) { System.out.println("姓名: "+list.get(i).getsName()+",年龄:" +list.get(i).getAge()); Student stu = list.get(i); System.out.println("姓名:"+stu.getsName()+",年龄:"+stu.getAge()); } } } //student类 package Demo1.test4; public class Student { private String sName; private int age; public Student() { } public Student(String sName, int age) { this.sName = sName; this.age = age; } public String getsName() { return sName; } public void setsName(String sName) { this.sName = sName; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
-
打印定格
package Demo1.test5; import java.util.ArrayList; public class test5 { public static void main(String[] args) { ArrayList<String> list = new ArrayList<>(); list.add("AAA"); list.add("BBB"); list.add("CCC"); list.add("DDD"); System.out.println(list); printArrayList(list); } public static void printArrayList(ArrayList<String> list){ System.out.print("{"); for (int i = 0; i <list.size() ; i++) { String name = list.get(i); if(i==list.size()-1){ System.out.print(name+"}"); } else{ System.out.print(name+"@"); } } } }
-
筛选集合
package Demo1.test6; import java.util.ArrayList; import java.util.Random; public class test6 { public static void main(String[] args) { ArrayList<Integer> biglist = new ArrayList<>(); Random random = new Random(); for (int i = 0; i <20 ; i++) { int num = random.nextInt(100)+1; biglist.add(num); } ArrayList<Integer> smalllist = getSmallList(biglist); System.out.println("偶数总共:"+smalllist.size()); for (int i = 0; i <smalllist.size() ; i++) { System.out.println(smalllist.get(i)); } } public static ArrayList<Integer> getSmallList(ArrayList<Integer> bigList){ ArrayList<Integer> smalllist = new ArrayList<>(); for (int i = 0; i <bigList.size() ; i++) { int num = bigList.get(i); if(num%2 == 0){ smalllist.add(num); } } return smalllist; } }
-