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

 我来答
我爱学习112
高粉答主

2021-01-24 · 每个回答都超有意思的
知道大有可为答主
回答量:7259
采纳率:100%
帮助的人:162万
展开全部

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

import java.util.HashMap;

import java.util.Map;

public class Demo {

public static void main(String[] args) {

Map<Integer,Integer> m = new HashMap<Integer,Integer>();

m.put(1, 1);

print(m);

m.put(1, 2);

print(m);

}

private static void print(Map<Integer, Integer> m) {

for(Map.Entry<Integer, Integer> mm : m.entrySet())

System.out.println("K: "+mm.getKey()+",V: "+mm.getValue());

}

}

扩展资料

集合类有一个共同特点,就是它们只容纳对象(实际上是对象名,即指向地址的指针)。这一点和数组不同,数组可以容纳对象和简单数据。如果在集合类中既想使用简单数据类型,又想利用集合类的灵活性,就可以把简单数据类型数据变成该数据类型类的对象,然后放入集合中处理,但这样执行效率会降低。

集合类容纳的对象都是Object类的实例,一旦把一个对象置入集合类中,它的类信息将丢失,也就是说,集合类中容纳的都是指向Object类对象的指针。

这样的设计是为了使集合类具有通用性,因为Object类是所有类的祖先,所以可以在这些集合中存放任何类而不受限制。当然这也带来了不便,这令使用集合成员之前必须对它重新造型。

集合类是Java数据结构的实现。在编写程序时,经常需要和各种数据打交道,为了处理这些数据而选用数据结构对于程序的运行效率是非常重要的。

帐号已注销
2020-12-28 · TA获得超过77.1万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:166万
展开全部

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

import java.util.HashMap;

import java.util.Map;

public class Demo {

public static void main(String[] args) {

Map<Integer,Integer> m = new HashMap<Integer,Integer>();

m.put(1, 1);

print(m);

m.put(1, 2);

print(m);

}

private static void print(Map<Integer, Integer> m) {

for(Map.Entry<Integer, Integer> mm : m.entrySet())

System.out.println("K: "+mm.getKey()+",V: "+mm.getValue());

}

}

//供参考,重新放一个相同的key,会自动覆盖value的。

扩展资料:

Map集合没有继承Collection接口,Map中不能包含相同的key值,每个key只能影射一个相同的value.key值还决定了存储对象在映射中的存储位置,但不是key对象本身决定的,而是通过散列技术进行处理,可产生一个散列码的整数值,散列码通常用作一个偏移量。

参考资料来源:百度百科-JavaMap集合

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
构向佳5231
2017-08-07 · 超过11用户采纳过TA的回答
知道答主
回答量:39
采纳率:0%
帮助的人:12.7万
展开全部
你这个问题问的我也懵比了一瞬间,map集合没有专门更改value的方法,更改value的方法就是map.put(key,value),更改就是直接替换,比如想改变key是"1",value是"一"的组合,就是map.put("1","壹"),直接替换就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
育知同创教育
2017-08-07 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
import java.util.HashMap;
import java.util.Map;

public class Demo {
public static void main(String[] args) {
Map<Integer,Integer> m = new HashMap<Integer,Integer>();
m.put(1, 1);
print(m);
m.put(1, 2);
print(m);
}

private static void print(Map<Integer, Integer> m) {
for(Map.Entry<Integer, Integer> mm : m.entrySet())
System.out.println("K: "+mm.getKey()+",V: "+mm.getValue());
}
}

//供参考,重新放一个相同的key,会自动覆盖value的。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
贲焕毛月怡
2020-05-24 · TA获得超过1148个赞
知道小有建树答主
回答量:1755
采纳率:100%
帮助的人:12.4万
展开全部
要remove原来的key,然后put新的key和原值。
比如将key由1改成2,需要这样:
map.put(2,
map.remove(1));
不知道你说的动态删除是什么意思,能说清楚点么。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式