arrary list
Java中List的详细用法
LinkListed用法:链接: link.
定义:List name = new ArrayList<>()
具体方法如下:
1.list中添加,获取,删除元素;
添加方法是:.add(e); 获取方法是:.get(index); 删除方法是:.remove(index); 按照索引删除; .remove(Object o); 按照元素内容删除;
List<String> person = new ArrayList<>(); person.add("jackie"); person.add("peter"); person.add("annie"); person.add("martin"); person.add("marry"); person.remove(3); person.remove("marry"); String per=""; per = person.get(1); System.out.println("per:"+per); System.out.print("result:"); for(String pers : person) { System.out.print("\t"+pers); }
2.list中是否包含某个元素;
方法:.contains(Object o); 返回true或者false
List<String> fruits = new ArrayList<>(); fruits.add("苹果"); fruits.add("香蕉"); fruits.add("桃子"); System.out.println("fruits中包含水果:"); for(int i=0;i<fruits.size();i++) { System.out.println(fruits.get(i)); } String appleString = "苹果"; System.out.printf("fruits中%s苹果\n",fruits.contains(appleString)?"包含":"不包含"); if(fruits.contains(appleString)) System.out.println("我喜欢吃苹果"); else System.out.println("我不喜欢吃苹果");
4.list中查看(判断)元素的索引;
注意:.indexOf(); 和 lastIndexOf()的不同;前者是第一个该值得索引,后者是最后一个该值得索引;
List<String> names = new ArrayList<>(); names.add("刘备"); names.add("关羽"); names.add("张飞"); names.add("刘备"); names.add("张飞"); System.out.println(names.indexOf("刘备")); System.out.println(names.lastIndexOf("刘备")); System.out.println(names.indexOf("张飞")); System.out.println(names.lastIndexOf("张飞"));
4.list中查看(判断)元素的索引;
注意:.indexOf(); 和 lastIndexOf()的不同;前者是第一个该值得索引,后者是最后一个该值得索引;
List<String> names = new ArrayList<>(); names.add("刘备"); names.add("关羽"); names.add("张飞"); names.add("刘备"); names.add("张飞"); System.out.println(names.indexOf("刘备")); System.out.println(names.lastIndexOf("刘备")); System.out.println(names.indexOf("张飞")); System.out.println(names.lastIndexOf("张飞"));
5.利用list中索引位置重新生成一个新的list(截取集合);
方法: .subList(fromIndex, toIndex); .size() ; 该方法得到list中的元素数的和
List<String> phone = new ArrayList<>(); phone.add("三星"); phone.add("苹果"); phone.add("锤子"); phone.add("华为"); phone.add("小米"); System.out.print("原集合为:"); for(String pho:phone) System.out.print(pho+"\t"); phone = phone.subList(1, 4); System.out.print("\n子集合为:"); for(int i=0;i<phone.size();i++) System.out.print(phone.get(i)+"\t");
6.对比两个list中的所有元素;
两个相等对象的equals方法一定为true, 但两个hashcode相等的对象不一定是相等的对象
List<String> fruits=new ArrayList<>(); fruits.add("苹果"); fruits.add("香蕉"); fruits.add("桃子"); List<String> fruit=new ArrayList<>(); fruit.add("苹果"); fruit.add("香蕉"); fruit.add("桃子"); List<String> person=new ArrayList<>(); person.add("jackie"); //索引为0 //.add(e) person.add("peter"); //索引为1 person.add("annie"); //索引为2 person.add("martin"); //索引为3 person.add("marry"); //索引为4 if(fruit.equals(fruits)) System.out.println("两个list中的所有元素相同"); else System.out.println("两个list中的所有元素不一样"); if(person.equals(fruits)) System.out.println("两个list中的所有元素相同"); else System.out.println("两个list中的所有元素不一样"); if(person.hashCode()==fruits.hashCode()) System.out.println("我们相同"); else System.out.println("我们不一样");
7.判断list是否为空;
空则返回true,非空则返回false
if (person.isEmpty()) { System.out.println("空的"); }else { System.out.println("不是空的"); }
8.返回Iterator集合对象;
System.out.println("返回Iterator集合对象:"+person.iterator());
9.将集合转换为字符串;
String liString ="";
liString = person.toString();
10.将集合转换为数组;
System.out.println("将集合转换为数组:"+person.toArray());
System.out.println("将集合转换为字符串:"+liString);