noi*_*rcc 0 java map pass-by-reference
它的工作原理如下:
Set<Integer> nums = numMap.get(id);
nums.add(new Integer(0));
// now do i have to:
numMap.put(id,nums)?
// or is it already stored?
Run Code Online (Sandbox Code Playgroud)
问候&& tia noircc
除非你深入克隆它,否则你不必把它放回去.一切都基于Java中的引用.
您总是可以通过编写一个简单的程序来测试它.
public static void main(String... args) {
Map<Integer, Set<Integer>> numMap = new HashMap<Integer, Set<Integer>>();
Set<Integer> set = new HashSet<Integer>();
set.add(10);
numMap.put(0, set);
System.out.println("Map before adding is " + numMap);
set.add(20);
System.out.println("Map after adding is " + numMap);
}
Run Code Online (Sandbox Code Playgroud)
哪个打印
Map before adding is {0=[10]}
Map after adding is {0=[20, 10]}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
228 次 |
| 最近记录: |