一:List集合
List集合是有序的,且元素可以重复
ArrayList 就是一个动态的数组
LinkedList 基于链表的存储结构
特点:
ArrayList 查询快,增删慢
LinkList 查询慢,增删快
代码演示:
//list 有序 可重复
List<String> list=new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
list.add("a");
System.out.println(list);
System.out.println(list.get(2));
System.out.println("list集合的遍历");
for (int i=0;i< list.size();i++){
String s=list.get(i);
System.out.println(s);
}
二:Set集合
Set集合他说存储的元素是不可重复的,并且元素都是无序的
Set集合不能直接获取某个元素,只能通过迭代器遍历元素
通俗地理解为小学生的书包,直接把元素扔进去,没有任何顺序的,所以元素不能重复。
代码演示:
// Set无序 不能重复
Set<String> set =new HashSet<>();
set.add("y");
set.add("z");
set.add("x");
System.out.println(set);
System.out.println("set集合的遍历");
Iterator<String> iterator= set.iterator();
while(iterator.hasNext()){
String s= iterator.next();
System.out.println(s);
}
注意:List和Set顶层接口都是Collection
三:Map
Map是基于键值对形式存储的数据结构
再Map中Key是不允许重复的,value值是可以重复的
Map会把所有的Key存放一个set集合中
代码演示:
//键值对
Map<String,Object>map=new HashMap<>();
map.put("name","张晓蝶");
map.put("age",20);
map.put("sex","女");
System.out.println(map);
System.out.println("Map的遍历");
Set<String> keySet=map.keySet();//获取map中所有key值的set集合
Iterator<String> ite=keySet.iterator();
while(ite.hasNext()){
String key=ite.next();
Object value=map.get(key);
System.out.println(key+"----->"+value);
}