Java中ArrayList类
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 }
上一篇: 01迷宫题解(bfs,联通块)
下一篇: Linux系统开发之路-中