`

HashSet应用

    博客分类:
  • Java
 
阅读更多

HashSet里面通过add增加对象。通过判定对象的hashcode和equal是否相同来决定是否是同一对象。如果是同一对象不添加进去。

		Set<SystemUser> set = new HashSet<SystemUser>();
		SystemUser user1 = new SystemUser();
		user1.setName("admin");
		user1.setSex("bb");
		set.add(user1);
		set.add(user1);
		SystemUser user2 = new SystemUser();
		user2.setName("admin");
		user2.setSex("aa");
		if(set.contains(user2)){
			set.remove(user2);
		}
		set.add(user2);
		System.out.println("Set size:"+set.size());
		for(SystemUser user :set){
			System.out.println(user.getName());
			System.out.println(user.getSex());
		}

Set size:1

admin

aa

 如果更新同一对象,先删除,然后在往里面添加。

分享到:
评论

相关推荐

    hashset类的使用

    在实际应用中,HashSet因其存储元素的唯一性和对元素添加、删除、查询的高效性而广泛应用。然而,需要注意的是,由于HashSet的无序性,元素插入顺序并不会被保留。如果需要一个有序集合,可以考虑使用LinkedHashSet...

    集合的概念及应用和HashSet保证数据不重复的原理

    关于“HashSet保证数据不重复的原理”,这涉及到HashSet内部的实现。HashSet基于HashMap实现,每个元素都是HashMap的一个键。在添加元素时,HashSet会调用对象的hashCode()方法生成哈希码,然后根据哈希码快速定位...

    HashMap与HashTable和HashSet的区别

    `HashSet`实际上就是`HashMap`的一个特殊应用,其将所有值映射为`null`。这意味着`HashSet`不允许`null`值,但允许一个`null`键(即一个`null`元素)。 **特点:** - **存储唯一性**:`HashSet`确保了存储元素的...

    treemap treeset hashset hashmap 简要介绍

    综上所述,选择`TreeMap`、`TreeSet`、`HashSet`还是`HashMap`,主要取决于具体的应用需求,比如是否需要保持元素的排序,是否允许重复元素,以及对插入、删除和查找操作速度的要求。正确理解并使用这些集合类,可以...

    排序之HashSet和TreeSet的区别

    两者在实际应用中的选择主要取决于需求。如果需要快速的插入和查找,对元素顺序没有要求,那么`HashSet`更为合适。而如果需要保持元素的排序或者执行范围查询,`TreeSet`则是更好的选择。 例如,`CnfmSelectItem....

    c++用vector实现HashSet

    请注意,这种实现不考虑性能优化,实际应用中,`std::unordered_set`或`std::set`可能是更好的选择,因为它们提供了更高效的操作。 通过使用`std::vector`实现HashSet,我们学习了如何利用C++标准库中的不同容器...

    集合类HashSet

    在实际应用中,HashSet常用于去重、快速查找和避免重复操作等场景。例如,在处理用户输入数据时,我们可以先将数据放入HashSet,以确保不重复添加;在实现缓存时,可以使用HashSet快速判断某个项是否已经存在于缓存...

    Java基础加强_ArrayList_HashSet的比较及Hashcode分析

    在Java编程语言中,ArrayList和HashSet是两种常用的集合类,它们各自有其特性和应用场景。在实际开发中,理解它们的差异以及如何有效地利用它们是非常重要的。本篇将深入探讨ArrayList与HashSet的区别,并分析...

    HashSet和TreeSet_围墙之外

    与HashSet和TreeSet的关系不大,但在实际的服务器部署和Web应用开发中,了解IIS的配置和管理对于IT专业人员来说是必要的技能。 总结一下,HashSet和TreeSet的主要区别在于: 1. 存储结构:HashSet使用哈希表,...

    HashSet和TreeSet.doc

    3. 对于性能敏感的应用,如果不需要排序且能接受无序的迭代顺序,HashSet 通常是更好的选择,因为它在大多数操作上具有更高的性能。 4. 考虑线程安全,如果在多线程环境中使用,可以考虑使用并发集合,如 ...

    HashSet工作原理_动力节点Java学院整理

    HashSet 广泛应用于各种场景,例如,在集合操作中,HashSet 可以用于快速地判断元素是否存在于集合中。在缓存中,HashSet 可以用于存储缓存的键。 HashSet 的工作原理是基于 HashMap 的,它的实现非常简单,添加和...

    Java中HashSet的解读_.docx

    在Java编程语言中,HashSet是一种基于哈希表(HashMap)实现的无序、不重复的集合类。它的核心特点是高效查找、添加和删除元素。在深入解析HashSet之前,我们...在实际应用中,开发者应根据需求选择最适合的数据结构。

    HashSet,TreeSet和LinkedHashSet的区别1

    选择哪种Set实现取决于具体的应用需求,如数据结构的特性、排序需求以及性能考虑。在使用这些集合类时,确保正确地实现了equals()、hashCode()(对于HashSet和LinkedHashSet)以及Comparable或Comparator(对于...

    Java编程中的HashSet和BitSet详解

    在实际应用中,我们可以根据具体情况选择使用HashSet或BitSet。如果需要存储大量的对象引用,可以使用HashSet。如果需要存储大量的布尔值数据,可以使用BitSet。选择合适的集合类是非常重要的,因为它可以直接影响...

    ThinkinginJava之Set接口、HashSet源码学习.pdf

    选择哪种Set实现取决于应用的具体需求,如是否需要排序、是否追求高性能等。 总之,Set接口和HashSet在Java集合框架中扮演着重要的角色,它们提供了一种有效存储和管理不重复元素的方式。通过深入理解其源码和工作...

    Java中HashSet和HashMap的区别_动力节点Java学院整理

    Java中HashSet和HashMap是两个常用的集合类,它们都属于Java集合框架(Java Collection Framework),但是它们有着不同的实现和应用场景。 什么是HashSet? HashSet实现了Set接口,它不允许集合中有重复的值。当...

    HashSet和TreeSet使用方法的区别解析

    HashSet和TreeSet使用方法的区别解析 HashSet和TreeSet都是Java集合框架中的Set接口实现,用于存储不重复的元素。但是,它们在使用方法和实现机理上有很大的区别。...* HashSet和TreeSet的实际应用和选择依据

    详解Java中HashSet和TreeSet的区别

    Java HashSet 和 TreeSet 的区别详解 HashSet 和 TreeSet 是 Java 中两个...在实际应用中,选择哪种集合类取决于具体的需求。如果需要一个无序的集合,可以使用 HashSet;如果需要一个有序的集合,可以使用 TreeSet。

    day18-集合-中(HashSet&TreeSet&比较器).zip

    在实际应用中,选择`HashSet`还是`TreeSet`,取决于我们是否需要保持元素的特定顺序以及排序方式。如果对性能有较高要求且不需要排序,那么`HashSet`通常是更好的选择。反之,如果需要元素按照特定规则排序,`...

Global site tag (gtag.js) - Google Analytics