【java】语法

这里写自定义目录标题

HashMap

参考资料:菜鸟教程大佬按照增删改查分类的资料

import java.util.HashMap;
public class learn_hashmap{
    public static void main(String[] args) {
        // 创建 HashMap 对象 Sites
        HashMap<Integer, String> Sites = new HashMap<Integer, String>();
        // 增:添加键值对
        Sites.put(1, "Google");
        Sites.put(2, "Runoob");
        Sites.put(3, "Taobao");
        // 删
        Sites.remove(2);  //通过key删一个
        Sites.clear();   //删全部
        // 改
        Sites.replace("2", "weibo");
        Sites.replace("2", "Runoob", "weibo");
        
        // 查
        // 查1:通过key获取value
        out_value=Sites.get(3);
        // 查2:通过遍历获取key
        for (Integer i : Sites.keySet()) {
            System.out.println("key: " + i + " value: " + Sites.get(i));
        }
        // 查3:通过遍历获取每个value
        for(String value: Sites.values()) {
            System.out.print(value + ", ");
        }
        // 查4: 遍历获得key,value
        for (Map.Entry<Integer, String> entry : Sites.entrySet()) {
             System.out.println("key: " + entry.getKey() + "value: " + Sites.getValue());
        }
        // 查5:判断是否有指定的key
        boolean flag1 = map.containsKey("1001");
        // 查6:判断是否有指定的value
        boolean flag2 = map.containsValue("zhihu");




        
        System.out.println(Sites);
    }
}

HashSet

参考资料:大佬
HashSet是基于HashMap来实现的,实现了Set接口,同时还实现了序列化和可克隆化。而集合(Set)是不允许重复值的。
所以HashSet是一个没有重复元素的集合,但不保证集合的迭代顺序,所以随着时间元素的顺序可能会改变。由于HashSet是基于HashMap来实现的,所以允许空值,不是线程安全的。

import java.util.HashSet;
HashSet<String> set = new HashSet<>();

//增,使用add(),但是HashSet不会存重复的元素,所以add相同的不会存进去。
set.add("张三");
set.add("李四");
set.add("张三");

//删
set.remove("张三");

// 查
//1. 查找某元素是否存在
boolean flag = set.contains("李四")
//2. 查找元素个数
nums = set.size()
//3. 判断set是否为空
boolean con = set.isEmpty(); 
//4. 遍历for循环
for (String s : set){}
//5. 遍历 迭代器
Iterator itr = hs.iterator();
while (itr.hasNext()){}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值