Hello只与Java有几个小时。 (来自Python) 我想定义一个多维数组并用“add”方法填充它。但是,我看到一些奇怪的结果:将项目添加到多维ArrayList
List<String[]> DrawInstructions = new ArrayList<String[]>();
String[] pair = {"",""};
pair[0]="UW";
pair[1]="100";
DrawInstructions.add(pair);
pair[0]="UM";
pair[1]="10";
DrawInstructions.add(pair);
pair[0]="UT";
pair[1]="50";
DrawInstructions.add(pair)
我预计DrawInstructions这个落得:
[( “UW,” 100 “),(” UM”, “10”),( “UT”, “50”)
但不是我越来越:
[( “UT”, “50”),( “UT”, “50”),( “UT”,” 50“)]
我相信这是非常基本的,但我无法弄清楚,我已经搜索了几个小时。请你提供任何建议。
您将同一对象添加到列表三次。 'add'函数不克隆该对象。 – DRCB 2012-01-02 13:26:48
http://stackoverflow.com/questions/40480/is-java-pass-by-reference – 2012-01-02 13:34:49