一、简介
Java 集合框架 Java Collection Framework ,又被称为容器 container ,是定义在 java.util 包下的一组接口 interfaces 和其实现类 classes 。其主要表现为将多个元素 element 置于一个单元中,用于对这些元素进行快速、便捷的存储 store 、检索 retrieve 、管理 manipulate ,即平时我们俗称的增删查改 CRUD 。
二、Collection接口
collection代码示例:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
public class CollectionTest {
public static void main(String[] args) {
//泛型:集合中保存的是String类型的若干对象
//本身是ArrayList<String>类型
Collection<String> collection = new ArrayList<>();
//使用 isEmpty 和 size
System.out.println(collection.isEmpty());
System.out.println(collection.size());
//使用 add,相当于是尾插
collection.add("10");
collection.add("20");
collection.add("30");
System.out.println(collection.isEmpty());
System.out.println(collection.size());
//使用 toArray
Object[] array = collection.toArray();
System.out.println(Arrays.toString(array));
//for each 遍历集合类
for(String s:collection) {
System.out.println(s);
}
//使用 contains,按照值来判断
boolean ret = collection.contains("66");
System.out.println("ret = "+ret);
//使用 remove
collection.remove("10");
for(String s:collection) {
System.out.println(s);
}
}
}
二、Map接口
Map代码示例:
import java.util.HashMap;
import java.util.Map;
public class MapTest {
public static void main(String[] args) {
//Map基本用法
Map<String, String> map = new HashMap<>();
//使用 isEmpty 和 size
System.out.println(map.isEmpty());
System.out.println(map.size());
//使用 put 插入键值对
map.put("及时雨", "宋江");
map.put("花和尚", "鲁智深");
//相同key会用新的value覆盖旧的value
map.put("行者", "武松");
map.put("行者", "武二郎");
System.out.println(map.isEmpty());
System.out.println(map.size());
//使用 get 根据 key 查找 value,key不存在返回null
System.out.println(map.get("花和尚"));
System.out.println(map.getOrDefault("小李广", "花荣"));//第二个为默认值
//使用 entry 遍历,每个 entry 就是一个条目,即键值对
for(HashMap.Entry<String,String> entry : map.entrySet()) {
System.out.println(entry.getKey()+" : "+entry.getValue());
}
//使用 containsKey(高效)/containsValue(低效,需要遍历) 判定元素是否存在
System.out.println(map.containsKey("及时雨"));
System.out.println(map.containsValue("宋江"));
}
}