Java中的HashSet和HashMap常见用法

这篇博客介绍了Java集合框架中HashSet和HashMap的基本用法。包括如何添加、检查、删除元素,以及获取集合的大小和遍历元素的方法。对于HashMap,还展示了如何存储键值对,通过键获取值,以及清理所有键值对的操作。这些内容对于理解和使用Java集合框架至关重要。

HashSet常见用法

HashSet<String> set = new HashSet<String>();
//添加元素(重复的元素不会添加)
set.add("");
//判断元素是否存在
set.contains("");
//删除元素
set.remove("");
//删除其中的所有元素
set.clear("");
//长度
set.size();
//遍历其中的元素
for(String str : set){
   System.out.println(str);
}

HashMap常见用法

HashMap<String, String> map = new HashMap<String, String>();
//添加键值对
map.put("","");
//通过键取出对应的值
map.get("");
//通过键删除相应的键值对
map.remove("");
//删除所有的键值对
map.clear();
//计算其大小
map.size();
//判断其是否为空
map.isEmpty();
//找出其中所有的值
map.values();
//找出所有的键
map.keySet();
//遍历键值对
for(String str : map.keySet()){
   System.out.println(str);
}
for(String str : map.values()){
   System.out.println(str);
}
JavaHashSet的使用方法如下: ### 引入HashSetHashSet类位于java.util包中,使用前需要引入,语法格式如下: ```java import java.util.HashSet; ``` ### 创建HashSet对象 以下实例创建一个HashSet对象`sites`,用于保存字符串元素: ```java HashSet<String> sites = new HashSet<String>(); ``` ### 添加元素 可以使用`add()`方法向HashSet中添加元素。例如: ```java import java.util.HashSet; public class HashSetExample { public static void main(String[] args) { HashSet<String> sites = new HashSet<String>(); sites.add("Google"); sites.add("Runoob"); sites.add("Taobao"); sites.add("Zhihu"); System.out.println(sites); } } ``` 由于HashSet不允许有重复元素,如果添加重复元素,HashSet不会存储重复的元素。当存储的值已经存在时,`add()`方法返回`false`,因为HashSet的值是作为HashMap的key存储在HashMap中的,而HashMap的key是唯一的 [^1][^3][^4]。 ### 判断元素是否存在 可以使用`contains()`方法判断HashSet中是否包含某个元素,返回值为布尔类型。例如: ```java boolean isContain = sites.contains("Google"); System.out.println(isContain); ``` ### 删除元素 可以使用`remove()`方法删除HashSet中的元素,如果元素存在则删除并返回`true`,如果元素不存在则返回`false`。例如: ```java boolean isRemoved = sites.remove("Google"); System.out.println(isRemoved); ``` ### 清空HashSet 可以使用`clear()`方法清空HashSet中的所有元素。例如: ```java sites.clear(); System.out.println(sites); ``` ### 遍历HashSet 可以使用`for-each`循环遍历HashSet中的元素。例如: ```java for (String site : sites) { System.out.println(site); } ``` ### 存储自定义对象 当HashSet存储自定义对象时,需要重写`equals()``hashCode()`方法,以确保对象的唯一性。例如,当该哈希值位置有对象,并且要存入对象的名字年龄都相同,则会舍弃该对象,不会存储到HashSet集合中;如果该哈希值位置没有对象,或者有对象但名字年龄与要存的对象不同,才会把该对象添加到集合中 [^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值