HashMap知识点


1.特点与概述:

HashMap底层是哈希表结构的
依赖hashCode方法和equals方法保证键的唯一
如果键存储的是自定义对象,需要重写hashCode和equals方法

2.  结构特征:

 HasHMap<key,value> c=new Map<key,value>();其中key,value常见有俩种类型:字符串类型(String)、整型(integer),c为可取任意名称。

3. 添加元素:

HashMap中添加键值对(key-value)可以使用put()方法:
例如:

// 创建 HashMap 对象 Sites
HashMap<Integer,String>dreams=new HashMap<Integer, String>();
// 添加键值对
dreams.put(1, "南京");
dreams.put(2, "苏州");
dreams.put(3, "香港");
dreams.put(4, "澳门");

4.输出语句(以上面案例为主):

a.直接输出:
    System.out.println(dreams);
    
    结果:{1=南京, 2=苏州, 3=香港, 4=澳门}
    
b.使用get(key)方法来获取key对应的value:
    System.out.println(dreams.get(3));
    
    结果:香港

5. 用删除元素remove(key)方法删除对应的键值对(以上面案例为主);

a:单个删除:在括号里输入"key"-----精确查找
dreams.remove(2);//则删掉数据2的信息
System.out.println(dreams);

结果:{1=南京, 3=香港, 4=澳门}


b.全部删除用clear方法:
dreams.clear();
System.out.println(dreams);

结果:{}

6.迭代HasHMap

有for-each和Iterator迭代,下面就以for-each为例:

用for-each来迭代HashMap中的元素
若只想获取 key,可以使用 keySet() 方法,然后可以通过 get(key) 获取对应的 value;
若只想获取 value,可以使用 values() 方法。

for (Integer i : dreams.keySet()) {
    System.out.println("key: " + i + " value: " + dreams.get(i));
}
// 返回所有 value 值
for(String value: dreams.values()) {
   // 输出每一个value
   System.out.print(value + ", ");
}

补充:可能遇到的情况,当eclipse打开时发现中文乱码!

1. 首先关闭有乱码的文件(不要修改里面的内容)
2. 将鼠标移到此文件上,右击找到 Properties→Resource
3. 找到此界面右边的Text file encoding栏,选择Other
一般情况下:都是在GBK与UTF-8中,互相切换(其中一个无法解决就换另一个)。
4. 最后点击 Apply and Close 
注意:在遇到中文乱码的文件,一定先不要急着去将乱码修改,这样会导致上面的步骤可能出错,致使乱码没有解决

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值