黑马程序员_日记41_HashSetDemo
来源:互联网 发布:淘宝开店注意事项 编辑:程序博客网 时间:2024/04/30 04:12
——- android培训、java培训、期待与您交流! ———-
Set集其实就是一个不包含重复元素的 collection。
Set元素存取是无序的,就是说元素取出和存入的顺序不一致;
Set元素是不可以重复的,就是说Set元素具有唯一性。
Set和Collecion的功能是一样的。
Set常见的子类有:
HashSet和TreeSet。
HashSet的底层是哈希表,多线程实现是不同步的,这点要注意!
下面先演示一下HashSet。
1 创建一个哈希表
2 添加元素
3 添加重复元素
4 利用迭代器取出元素
5 观察元素取出的顺序
import java.util.*;class HashSetDemo{ public static void main(String[] args) { //1 创建一个哈希集合 HashSet hs = new HashSet(); //2 添加元素 hs.add("num02"); hs.add("num03"); hs.add("num01"); hs.add("num08"); hs.add("num05"); hs.add("num05"); hs.add("num07"); hs.add("num07"); hs.add("num09"); hs.add("num04"); System.out.println("添加非重复元素:"+hs.add("num06")); System.out.println("添加重复元素:"+hs.add("num06")); //获取迭代器取出元素 for(Iterator it = hs.iterator(); it.hasNext(); ) System.out.println(it.next()); }}
因为add方法的返回值是boolean类型的,所以打印了true和false。
所以要注意:boolean add(obj)这个返回类型!
从运行结果来看,元素取出的顺序和存入的顺序是不一致的!
这就是Set所谓的元素存取是无序的!
千万不要混淆元素是无序的。
另外,通过运行结果也不难发现,元素是没有重复的。
因为当添加重复元素的时候,add返回值为false,
重复元素是添加不进去的!
0 0
- 黑马程序员_日记41_HashSetDemo
- 黑马程序员_学习日记3_WinForm
- 黑马程序员_学习日记8_HTML
- 黑马程序员_学习日记16_JavaScript
- 黑马程序员_学习日记19_jQuery
- 黑马程序员_学习日记十一_GUI
- 黑马程序员_java学习日记_数组
- 黑马程序员_java学习日记_集合
- 黑马程序员_学习日记57_702HTML
- 黑马程序员_学习日记58_703JavaScript
- 黑马程序员_日记01(多线程)
- 黑马程序员_日记02(IO)
- 黑马程序员_日记03(网络编程)
- 黑马程序员_学习日记 static
- 黑马程序员_学习日记 struct class
- 黑马程序员_日记1--Java函数
- 黑马程序员_日记2--Java数组
- 黑马程序员_日记5_Java多态
- 第三十二次codeforces竞技结束 #299 Div 2
- 闰年综述
- 谈谈android反编译和防止反编译的方法
- 【C语言】有n个结构体变量,内含学生号, 姓名和三门课成绩。要求输出平均成绩最高学生的信息。
- Android应用程序安装过程源代码学习
- 黑马程序员_日记41_HashSetDemo
- mui 固定头部,加载子页
- 网游服务器端设计思考:游戏的错误提示
- python2.7 error: Unable to find vcvarsall.bat
- tomcat内存修改
- android应用程序框架层创建的应用程序进程学习
- MRI数据处理:如何打开.nii文件及其他
- rutrutrutrutruity
- 类似愤怒小鸟的飞行弹道