在java的Map集合中,怎样更改value的值?

Map集合中如何在原来的工资基础上都增加30%?

map集合没有专门更改value的方法,更改value的方法就是map.put(key,value),更改就是直接替换,比如想改变key是"1",value是"一"的组合,就是map.put("1","壹"),直接替换就行。

import java.util.HashMap;

public class Demo {

public static void main(String[] args) {

HashMap<String, Integer> map = new HashMap<String, Integer>();

map.put("张三", 89);

map.put("赵四", 100);

System.out.println(map);

if (map.containsKey("张三")) {//判断如果存在 key ,就修改value

map.put("张三", 98);//修改

}

System.out.println("------分割线------");

System.out.println(map);

}

avaMap集合

Map集合没有继承Collection接口,,Map中不能包含相同的key值,每个key只能影射一个相同的value。key值还决定了存储对象在映射中的存储位置。

但不是key对象本身决定的,而是通过散列技术进行处理,可产生一个散列码的整数值,散列码通常用作一个偏移量,该偏移量对应分配给映射的内存区域的起始位置,从而确定存储对象在映射中的存储位置。Map集合包括Map接口以及Map接口所实现的类。

以上内容参考:百度百科-JavaMap集合

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-06-27

修改map中的value只需要在此put对应key和新的value即可修改。

Map<String,String> maps = new HashMap<>();
maps.put("test","test");
System.out.println("key test ,vlaue : "+maps.get("test"));
maps.put("test","test1");
System.out.println("key test ,vlaue : " + maps.get("test"));

结果如下:

第2个回答  推荐于2018-02-26
public static void Test1() {
Map<String, Integer> m = new HashMap<String, Integer>();
m.put("1", 20);
m.put("2", 30);
Set<String> s = m.keySet();//获取KEY集合
for (String str : s) {
m.put(str, (int) (m.get(str) * 1.3));
}
System.out.println(m.get("1") + " " + m.get("2"));
}本回答被网友采纳
第3个回答  2013-06-18
value值乘以百分之三十。
第4个回答  2013-06-18
map.put(key, map.get(key)*1.3);
相似回答