Java单列集合总结
来源:互联网 发布:益思留学 知乎 编辑:程序博客网 时间:2024/06/06 12:56
集合专题_单列集合Collection
一、集合常见功能
01.添加元素 add(E e)
ArrayList list=new ArrayList();
list.add(“a”);
list.add(“b”);
list.add(“c”);
list.add(“a”);
System.out.println(list);//结果为[a, b, c, a]
02.判断集合中是否包含元素contains(Object o)
//判断list集合中是否包含 元素”b”
boolean b1 = list.contains(“b”);
System.out.println(b1);//结果为true,包含
//判断list集合中是否包含 元素”b”
boolean b2 = list.contains(“w”);
System.out.println(b2);//结果为false,不包含
03.清空元素clear()
list.clear();//清空集合中的元素
System.out.println(list);//结果为[]
04.判断集合中是否包含元素isEmpty()
//判断集合是否为空
boolean b = list.isEmpty();
System.out.println(b);//true,集合中没有元素
二、集合遍历
01.迭代器遍历(任何集合通用)
ArrayList list=new ArrayList();
list.add(“abc”);
list.add(“bbb”);
list.add(“ccc”);
//获取集合的迭代器
Iterator it = list.iterator();
//循环判断集合中是否有元素可迭代
while(it.hasNext()){
//如果有元素,通过next()方法获取元素
Object n = it.next();
System.out.println(n);
}
注意事项
注意:并发修改异常ConcurrentModificationException
迭代器在遍历集合的同时,集合自己去修改了集合中的元素,这个时候就会产生并发修改异常。
开发中并不会使用迭代器遍历,取而代之的是高级for循环
02.普通for循环(只遍历List集合)
ArrayList list=new ArrayList();
list.add(“abc”);
list.add(“bbb”);
list.add(“ccc”);
//普通for循环 注意:普通for不能遍历Set,因为Set没有索引。
for(int i=0;i>list.size();i++){
String e = list.get(i);
System.out.println(e);
}
03.高级for循环(遍历任何集合,但是不能修改元素)
注意:高级for也叫foreach
/*
* 高级for循环遍历
* for(数据类型 变量名:集合/数组){
*
* }
*/
for(String s:list){
System.out.println(s);
list.add(“xxx”);
}
三、Set集合
- HashSet 集合
保证元素唯一性的方式:alt+shift+s自动完成
1,复写元素的hashCode
2,复写元素的equals
往HashSet集合中存储元素的时候,集合会先判断元素的hashCode值否相等,
再判断equals是否相等,如果全都相等就认为元素重复,不存。否则存储
HashSet存储字符串
String类已经复写了hashCode和equals所以HashSet中存储String对象,不能重复
//特点:无序,不能重复 ,没有索引
HashSet set=new HashSet();
set.add(“abcd”);
set.add(“bbbb”);
set.add(“cccc”);
set.add(“abcd”);
System.out.println(set);//结果[bbbb, cccc, abcd]
HashSet存储Student
Student类中复写hashCode和equals 才能保证在HashSet集合中 Student对象不重复
HashSet set1=new HashSet();
set1.add(new Student(“张三丰”,65));
set1.add(new Student(“张无忌”,30));
set1.add(new Student(“张三丰”,65));
System.out.println(set1);//[[ 张无忌30], [ 张三丰65]]
02.LinkedHashSet集合
保证元素是有序的,保证键的的唯一,其他和HashSet用法一样。
案例代码
//LinkedHashSet有序,不能重复
LinkedHashSet linkset=new LinkedHashSet<>();
linkset.add(“a”);
linkset.add(“a”);
linkset.add(“b”);
linkset.add(“c”);
linkset.add(“d”);
System.out.println(linkset);//[a, b, c, d]
System.out.println(“———————–”);
//HashSet元素无序,不能重复
HashSet set=new HashSet<>();
set.add(“a”);
set.add(“a”);
set.add(“b”);
set.add(“c”);
set.add(“d”);
System.out.println(set);//[d, b, c, a]
- Java单列集合总结
- JAVA 单列集合总结
- java 单列集合总结
- Java集合框架总结01之常用单列集合(ArrayList, HashSet)
- Java集合框架--单列集合(Collection)
- 单列集合
- 单列集合
- 单列集合
- 单列集合
- 单列集合
- 单列集合
- java集合Collection(单列集合)、Map(双列)
- Java基础(集合卷)--单列集合老大Collection
- 17 API-集合(登录注册案例集合版,Set集合(Set_HashSet_TreeSet),Collection单列集合总结)
- java笔记_Map集合与单列设计模式
- 黑马程序员---Java基础---单列集合Collection(接口)
- JAVA基础知识点(十三)--单列集合中的List接口
- java 单列集合list及其子实现类
- 项目实训-千寻-实时点对点地图
- JSP—一个简单的登录界面
- 【简记】Computer Networking——transport layer(tcp part)
- 【LeetCode】61. Rotate List
- Jquery实现简单的导航单并且经常使用
- Java单列集合总结
- 主题六 函数(C语言核心)----38.函数设计技巧
- 15、权限管理之文件系统属性chattr、以及sudo
- 流式计算storm,spark文章
- 在web项目中如何启动spring容器?
- CSAPP cache-lab
- AndroidClassLoader源码解析
- spring MVC 框架搭建
- [3] Centos 7.3 用户和组管理