/*
List:
可重复集,并且有序
可以根据数组下标操作元素
常用实现类:
ArrayList:使用数组实现,查询更快;线程不安全的。vector:线程安全的
LinkedList:使用链表实现,增删更快.首尾增删快
*/
public class List0 {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("a");
list.add("a");
list.add("b");
list.add("c");
System.out.println(list);
list.set(2, "d");//替换
System.out.println(list);
list.remove(1);//移除
System.out.println(list);
List<String> s = list.subList(0, 1);//截取数组。从0号到1号不.含1
System.out.println("s:"+s);
String[] array = list.toArray(new String[list.size()]);//集合转换成数组
for (String str : array) {
System.out.println(str);
}
}
}
public class List1 {
public static void main(String[] args) {
String []str={"1","2","3","6","5","4"};
List<String> list=Arrays.asList(str);//数组转换成集合
System.out.println(list);
//list.add("4");//不能添加,数组不能扩容,可以通过新建一个list,然后添加进去
//System.out.println(list);
Collections.sort(list);//Collections可以操作集合,排序 由小到大
System.out.println("排序后"+list);
}
}
/*
list中如果存放的是对象,如果要排序就必须实现实体类的Comparable接口,重写compareTo方法
*/
public class list2 {
public static void main(String[] args) {
List<Student> list=new ArrayList<Student>();
Student student1=new Student(8);
Student student2=new Student(3);
Student student3=new Student(5);
list.add(student1);
list.add(student2);
list.add(student3);
Collections.sort(list);//实体类必须实现Comparable接口
System.out.println(list);
}
}