Java中遍历Set集合的三种方法
Map集合:链接: Map集合的五种遍历方式及Treemap方法
Set集合:链接: Java中遍历Set集合的三种方法
TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法
LIst集合:链接: Java中List集合的三种遍历方式(全网最详)
集合区别:链接: java中list,set,map集合的区别,及面试要点
1.迭代遍历:
Set set = new HashSet();
Iterator it = set.iterator();
while (it.hasNext()) {
String str = it.next();
System.out.println(str);
}
2.for循环遍历:
for (String str : set) {
System.out.println(str);
}
优点还体现在泛型 假如 set中存放的是Object
Set set = new HashSet();
for循环遍历:
for (Object obj: set) {
if(obj instanceof Integer){
int aa= (Integer)obj;
}else if(obj instanceof String){
String aa = (String)obj
}
…
}
1 Set集合介绍
Collection接口可以存放重复元素,也可以存放不重复元素。List可以存放重复元素,Set就是不重复的元素。
通过元素的equals方法,来判断是否为重复元素。
Set集合取出元素的方式可以采用:迭代器,增强 for
2 HashSet(哈希表)
此类实现了Set接口,由哈希表(实际是HashMap实例)支持。它不保证set的迭代顺序,特别是它不保证该顺序恒久不变。此类允许使用null元素。
特点:无序集合,存储和取出的顺序不同,没有索引,不存储重复元素。代码的编写和ArrayList完全一致。
HashSet特点:
底层数据结构:哈希表(链表和数组的结合体);
存储取出都比较快;
线程不安全,运行速度快;
3 对象的哈希值
如果没有重写父类,每次运行的结果都是不同的整数;
如果子类重写父类的方法,哈希值,自定义;
存储到HashSet的依据;
4 字符串的哈希值
String类继承Object,重写了父类的方法hashCode,
5 哈希表的存储过程
public static void main(String[] args) {HashSet<String> set=new HashSet<String>();set.add(new String("abc"));set.add(new String("abc"));set.add(new String("abc"));set.add(new String("bbc"));set.add(new String("bbc"));System.out.println(set);}
Java中遍历Set集合的三种方法相关推荐
- Java中遍历Set集合的三种方法(实例代码)
哈喽,欢迎来到小朱课堂,下面开始你的学习吧! Java中遍历Set集合的三种方法 废话不多说,直接上代码 1.迭代遍历: Set set = new HashSet(); Iterator it = ...
- Java中遍历Map集合的5种方式总结
这篇文章主要给大家介绍了关于Java中遍历Map集合的5种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值. 方式一 通过Map.keySet使用iterator遍历 ...
- Java 数组转成集合List三种方法和(数组、集合List、Set相互转换)
Java 数组转成集合List 三种方法 package com.list;import java.util.ArrayList; import java.util.Arrays; import ja ...
- 遍历List集合的三种方法
遍历List集合的三种方法 List<String> list = new ArrayList<String>(); list.add("aaa"); li ...
- java中从键盘输入的三种方法以及Console输入
java中从键盘输入的三种方法: import java.io.BufferedReader; import java.io.IOException; import java.io.InputStre ...
- Java 中Int转String的三种方法
JAVA 中int类型转String类型的三种通常方法: 1.String.valueOf(int i) 2.Integer.toString(int i) 3.i + ""; / ...
- Java中遍历文件夹的2种方法
java遍历文件夹的两种办法: A. 不使用递归 import java.io.File; import java.util.LinkedList; public class FileSystem { ...
- java 获取键盘点击_Java中获取键盘输入值的三种方法介绍
程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这 ...
- Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法...
Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法 www.MyException.Cn 发布于:2012-09-15 ...
最新文章
- opencv实现人脸检测、性别和年龄预测
- ubuntu远程桌面
- python问卷调查系统设计案例_从设计到施工,全面剖析超级玻璃屋面系统案例!...
- 自定义关键字_Java中的自定义异常
- 如何一个动态创建对象?
- 英特尔曾遭“经验老道”的黑客攻击
- android多击事件_android自定义OnTouchEvent处理长按,单击,双击,多击事件和Touch
- Atitit 摄像头与主机连接方式大总结
- 操作系统课程设计之Pintos
- 基于扩频信号的水声信道数据传输系统仿真,研究满足了WSSUS假设的瑞利信道模型,采用相干BPSK调制,联合多普勒Rake接收机
- 一种多源信息融合方法及其应用(Matlab代码实现)
- 百度AI开放平台文字之身份证识别的实现
- 计算机检索的pdf格式,计算机检索基础.pdf
- HTML表格合并行和列
- 【实验记录】yolov5的一些改进tricks总结--持续更ing
- 最全的IMSI获取手机号段、归属地java代码
- 自动化测试C语言程序,初级自动化测试笔试题
- android 汉字 unicode编码,Android解析UniCode编码
- 答案原文及理解解释《解析解释守株待兔死脑筋,旁门左道不正规是什么》什么意思含义
- 记笔记,手写与打字哪个更有效?