List
- List常用的三个实现类
- List常用API
- 增*4
- 删*4 + 清空
- 改
- 查
- 查大小
- 查值
- 查索引
- 查存在
- 排序
- 切片
一:List常用的三个实现类
二:List常用API
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
* 测试List中的常用方法
*/
public class T01_List {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
// 增*4
// add(value)
// add(index,value)
// addAll(Collection)
// addAll(index,Collection)
list.add("one");
list.add("two");
list.add(1,"three");
List<String> list1 = new ArrayList<>();
list1.add("111");
list1.add("222");
list1.add(0,"333");
list.addAll(list1);
list.addAll(1,list1);
System.out.println(list.size());
System.out.println(list); // [one, 333, 111, 222, three, two, 333, 111, 222]
// 删*4 + 清空clear()
// remove(index):value
// remove(Object):boolean
// removeAll(Collection<?>):boolean
// removeIf(~):boolean
list.remove("333");
list.remove(1);
// list.removeAll(list1);
list.removeIf(t->t.endsWith("e"));
System.out.println(list); // [222, two, 333, 111, 222]
// 改*2
// set(index,newValue):oldValue
// replaceAll(lambda表达式,内用return一个新的字符串,内部可做判断)
list.set(0,"???");
list.replaceAll(t->{
if(t.endsWith("2")){
return "???";
}
return t;
});
System.out.println(list); // [???, two, 333, 111, ???]
// 查
// ???
// two
// 333
// 111
// ???
// get(index)
// size()
// contains(Object)
// containsAll(Collection<?>)
// indexOf(Object)
// lastIndexOf(Object)
System.out.println(list1.get(0));
System.out.println(list.size());
System.out.println(list.contains("two"));
System.out.println(list.contains("one"));
List<String> list2 = new ArrayList<>();
list2.add("111");
list2.add("222");
System.out.println(list.containsAll(list2));
System.out.println(list.indexOf("???")); // 0
System.out.println(list.indexOf("xxx")); // -1
System.out.println(list.lastIndexOf("???")); // 4
// 排序
// 使用List自身的sort方法
// 使用Collections工具类的sort方法
// list.sort((o1,o2)->o1.compareTo(o2));
list.sort(String::compareTo);
Collections.sort(list);
// 切片
// [from, to)
System.out.println(list); // [111, 333, ???, ???, two]
List<String> list3 = list.subList(1,3);
System.out.println(list3); // [333, ???]
}
}