admin 管理员组文章数量: 1086019
Java 值传递
话不多说,直接上代码:
public static void main(String[] args) {Map<String,String> map = new HashMap<>();map.put("1","1");map.put("2","2");map.put("3","3");map.put("4","4");Map<String,String> newMap = new HashMap<>(map);for(String key : newMap.keySet()){System.out.println("11111 key:"+key+" value:"+newMap.get(key));}newMap.put("3","33333");newMap.put("4","44444");for(String key : newMap.keySet()){System.out.println("2222 key:"+key+" value:"+newMap.get(key));}for(String key : map.keySet()){System.out.println("map key:"+key+" value:"+newMap.get(key));}}
运行结果:
11111 key:1 value:1
11111 key:2 value:2
11111 key:3 value:3
11111 key:4 value:4
2222 key:1 value:1
2222 key:2 value:2
2222 key:3 value:33333
2222 key:4 value:44444
map key:1 value:1
map key:2 value:2
map key:3 value:33333
map key:4 value:44444
newMap 明明是new的一个Map,修改他的字段值为什么会影响到map里边的字段值,这就是值传递;目前解决值传递的方法我只想到了遍历旧的对象,把值赋给新new出来的对象
本文标签: Java 值传递
版权声明:本文标题:Java 值传递 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1686558054a10084.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论