跟王老师学集合:Set接口和HashSet类
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了跟王老师学集合:Set接口和HashSet类相关的知识,希望对你有一定的参考价值。
Set接口和HashSet类
主讲人:王少华 QQ群号:483773664
学习目标
1、理解Set接口的特点
2、掌握HashSet类使用
一、Set接口
Set集合中的元素,是无序的
Set集合不允许包含相同的元素,如果试图把两个相同元素加入同一个Set集合中,则添加操作失败,add方法返回false,且新元素不会被加入
二、HashSet类
HashSet是Set的典型的实现,大多数时候,使用Set集合时就是使用HashSet
(一)HashSet的特点
1、不能保证元素的排列顺序,顺序有可能发生变化
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | public class Test { public static void main(String[] args) { String name1 = "孙悟空" ; String name2 = "猪八戒" ; String name3 = "沙僧" ; String name4 = "唐僧" ; Set nameSet = new HashSet(); nameSet.add(name1); nameSet.add(name2); nameSet.add(name3); nameSet.add(name4); System.out.println(nameSet); } } |
2、HashSet不是同步的,如果多个线程访问一个HashSet,必须通过代码来保证其同步
3、可以存储null
1 | nameSet.add( null ); |
(二)常用方法
1 2 3 4 5 6 7 8 9 10 | public class TestAdd { public static void main(String[] args) { Set set = new HashSet(); set.add( new String( "隔壁老王" )); //因为两个对象通过equals方法比较相等,所以添加失败 boolean bool = set.add( new String( "隔壁老王" )); System.out.println( "bool:" +bool); System.out.println(set); } } |
三、视频地址
http://edu.51cto.com/course/course_id-6028.html
以上是关于跟王老师学集合:Set接口和HashSet类的主要内容,如果未能解决你的问题,请参考以下文章