集合小结
来源:互联网 发布:淘宝网哪里投诉 编辑:程序博客网 时间:2024/06/01 10:07
一.单列集合 Collection
1.List接口(有序 有重复)(遍历:普通for ,迭代器, 增强for , toArray方法)
1.1 ArrayList(查询快 增删慢)***
1.2 LinkedList(查询慢 增删快)
2.Set接口(无序无重复)(遍历: 迭代器 , 增强for , toArray方法)
1.1 HashSet(去重复) 重写hasCode equals 方法
1.2 LinkedHashSet
二.双列集合
1.HashMap
2.LinkedHashMap
三.单列集合 Collection 总结
01.增加元素 add()
举例:
ArrayList<String> list=new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("e");
System.out.println(list);
结果为[a,b,c,d,e]
02.判断集合中是否包含元素 contains
//判断list集合中是否包含元素"b"
boolean b1=list.contains("b");
System.out.println(b1);
03.清空元素 clear
list.clear();清空集合中的所有元素
04.判断集合中是否为空
list.isEmpty();
二.遍历集合
01.迭代器遍历
ArrayList<String> list =new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
//获取迭代器
Iterator it =list.iterator();
//循环判断是否有元素可以迭代
while(it.hasNext(){
//如果有元素,通过next()方法获取元素
System.out.println(it.nxet());
}
注意:并发修改异常
迭代器在遍历集合的同时,集合自己去修改了集合中的元素,这个时候就会产生并发修改异常.
02.普通for循环
ArrayList<String> list =new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
//普通for循环 注意:Set集合没有索引 所以不能使用
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
03.增强for循环
for(String s: list){
System.out.println(s);
}
04.toArray方法
ArrayList<String> list =new ArrayList<String>();
Object[] array =list.toArray();
for(int i=0;i<array.length;i++){
System.out.println(array[i]);
}
三.Set集合
01.HashSet集合
去重复---右键生成 hashCode方法 equals方法
01.String类已经复写了hashCode和equals所以HashSet中存储String对象,不能重复
//特点:无序,不能重复 ,没有索引
HashSet<String> set=new HashSet<String>();
set.add("abcd");
set.add("bbbb");
set.add("cccc");
set.add("abcd");
System.out.println(set);//结果[bbbb, cccc, abcd]
02.Student类中复写hashCode和equals 才能保证在HashSet集合中 Student对象不重复
HashSet<Student> set1=new HashSet<Student>();
set1.add(new Student("张三丰",65));
set1.add(new Student("张无忌",30));
set1.add(new Student("张三丰",65));
System.out.println(set1);//[[ 张无忌30], [ 张三丰65]]
02.LinkedHashSet集合
跟HashSet用法一样
四.双列集合 Map
A.Map集合的常用方法
01.put方法 put(K key, V value)
给集合添加元素
HashMap<String, Integer> map=new HashMap<>();
map.put("李晨", 28);
map.put("王宝强", 27);
map.put("宋哲", 18);
map.put("邓超", 40);map.put("李晨", 30);
注意: 添加键值,并且返回被覆盖的值
如果集合中有对应的键,返回被覆盖的值
如果没有对应的键,返回null
02.获取键集get(Object key)
Integer v = map.get("王宝强");
System.out.println(v);//27
03.移除键集remove(Object key)
map.remove("王宝强");
04.判断是否包含键containsKey(Object key)
//演示remove(Object key) 移除元素
Integer v2 = map.remove("宋哲");
System.out.println(v2);//18
//演示containsKey(Object key)
//判断是否包含 键"邓超"
boolean b1 = map.containsKey("邓超");
System.out.println(b1);//true
05.判断是否包含键containsValue(Object key)
//演示containsValue(Object value)
//判断是否包含 值40
boolean b2 = map.containsValue(40);
System.out.println(b2);//true
B.两种遍历方式
01.获取【键值对】entrySet()方式
//获取【键值对】entrySet
Set<Entry<String, String>> entrys = map.entrySet();
//遍历set集合
for (Entry<String, String> entry : entrys) {
//获取entry对象的键和值
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key+"="+value);
}
02.获取键值对keySet()方式
Set<String> keys1 = map.keySet();
for (String key : keys1) {
//通过get方法获取值
String value = map.get(key);
System.out.println(key+"="+value);
}
五.补充Collenctions工具类
常见的方法:
二分查找 binarySearch
列表复制 copy
列表填充 fill
列表反转 reverse
随机置换 shuffle
自然排序 sort
互换位置 swap
1.List接口(有序 有重复)(遍历:普通for ,迭代器, 增强for , toArray方法)
1.1 ArrayList(查询快 增删慢)***
1.2 LinkedList(查询慢 增删快)
2.Set接口(无序无重复)(遍历: 迭代器 , 增强for , toArray方法)
1.1 HashSet(去重复) 重写hasCode equals 方法
1.2 LinkedHashSet
二.双列集合
1.HashMap
2.LinkedHashMap
三.单列集合 Collection 总结
01.增加元素 add()
举例:
ArrayList<String> list=new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("e");
System.out.println(list);
结果为[a,b,c,d,e]
02.判断集合中是否包含元素 contains
//判断list集合中是否包含元素"b"
boolean b1=list.contains("b");
System.out.println(b1);
03.清空元素 clear
list.clear();清空集合中的所有元素
04.判断集合中是否为空
list.isEmpty();
二.遍历集合
01.迭代器遍历
ArrayList<String> list =new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
//获取迭代器
Iterator it =list.iterator();
//循环判断是否有元素可以迭代
while(it.hasNext(){
//如果有元素,通过next()方法获取元素
System.out.println(it.nxet());
}
注意:并发修改异常
迭代器在遍历集合的同时,集合自己去修改了集合中的元素,这个时候就会产生并发修改异常.
02.普通for循环
ArrayList<String> list =new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
//普通for循环 注意:Set集合没有索引 所以不能使用
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
03.增强for循环
for(String s: list){
System.out.println(s);
}
04.toArray方法
ArrayList<String> list =new ArrayList<String>();
Object[] array =list.toArray();
for(int i=0;i<array.length;i++){
System.out.println(array[i]);
}
三.Set集合
01.HashSet集合
去重复---右键生成 hashCode方法 equals方法
01.String类已经复写了hashCode和equals所以HashSet中存储String对象,不能重复
//特点:无序,不能重复 ,没有索引
HashSet<String> set=new HashSet<String>();
set.add("abcd");
set.add("bbbb");
set.add("cccc");
set.add("abcd");
System.out.println(set);//结果[bbbb, cccc, abcd]
02.Student类中复写hashCode和equals 才能保证在HashSet集合中 Student对象不重复
HashSet<Student> set1=new HashSet<Student>();
set1.add(new Student("张三丰",65));
set1.add(new Student("张无忌",30));
set1.add(new Student("张三丰",65));
System.out.println(set1);//[[ 张无忌30], [ 张三丰65]]
02.LinkedHashSet集合
跟HashSet用法一样
四.双列集合 Map
A.Map集合的常用方法
01.put方法 put(K key, V value)
给集合添加元素
HashMap<String, Integer> map=new HashMap<>();
map.put("李晨", 28);
map.put("王宝强", 27);
map.put("宋哲", 18);
map.put("邓超", 40);map.put("李晨", 30);
注意: 添加键值,并且返回被覆盖的值
如果集合中有对应的键,返回被覆盖的值
如果没有对应的键,返回null
02.获取键集get(Object key)
Integer v = map.get("王宝强");
System.out.println(v);//27
03.移除键集remove(Object key)
map.remove("王宝强");
04.判断是否包含键containsKey(Object key)
//演示remove(Object key) 移除元素
Integer v2 = map.remove("宋哲");
System.out.println(v2);//18
//演示containsKey(Object key)
//判断是否包含 键"邓超"
boolean b1 = map.containsKey("邓超");
System.out.println(b1);//true
05.判断是否包含键containsValue(Object key)
//演示containsValue(Object value)
//判断是否包含 值40
boolean b2 = map.containsValue(40);
System.out.println(b2);//true
B.两种遍历方式
01.获取【键值对】entrySet()方式
//获取【键值对】entrySet
Set<Entry<String, String>> entrys = map.entrySet();
//遍历set集合
for (Entry<String, String> entry : entrys) {
//获取entry对象的键和值
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key+"="+value);
}
02.获取键值对keySet()方式
Set<String> keys1 = map.keySet();
for (String key : keys1) {
//通过get方法获取值
String value = map.get(key);
System.out.println(key+"="+value);
}
五.补充Collenctions工具类
常见的方法:
二分查找 binarySearch
列表复制 copy
列表填充 fill
列表反转 reverse
随机置换 shuffle
自然排序 sort
互换位置 swap
阅读全文
0 0
- 集合小结
- 集合小结
- 集合小结
- 集合小结
- 集合小结
- 集合小结
- 集合小结
- 集合小结
- JAVA集合小结
- Java 集合框架小结
- java 集合 框架小结
- Request.ServerVariables集合小结
- java集合小结
- 【学习心得】集合小结
- JAVA集合小结
- JAVA集合小结
- C#集合小结
- JAVA集合小结
- ubuntu下安装eclipse
- myeclipse中怎么解除jsp一直运行在一个指定的tomcat上的问题
- ubuntu下python中文编码的设置方式
- spring框架及spring cloud框架主要组件
- 2017年7月6日23:07:24
- 集合小结
- PPT制作之表格
- 服务器处理文件上传
- hdfs的shell操作
- vim的常用操作
- Java数据结构和算法(2)--《Java数据结构和算法》第二版 Robert lafore编程作业第二章
- 黑山谷入夜的峡谷更显画意诗情般的意境
- 梅花绝句·其一
- 代码编程:(四)Object-C命名规范详述