pro*_*_01 -2 java string arraylist
ArrayList<String> strings=new ArrayList<String>();
strings.add("h");
strings.add("e");
strings.add("l");
strings.add("l");
strings.add("o");
Run Code Online (Sandbox Code Playgroud)
下一个陈述是 strings.add(strings.remove(strings.size()-1)+"C");
然后输出结果是[h,e,l,l,oC],
所以我想知道为什么strings.add(strings.remove(strings.size()-1)+"C")得到这个结果,
小智 9
strings.remove(strings.size()-1)返回"o"因为ArrayList.remove返回被删除的元素.然后将"o"与"C"连接,创建"oC",将其添加到"o"的末尾ArrayList
你可以认为strings.add(strings.remove(strings.size()-1)+"C");相当于:
String s = strings.remove(strings.size()-1);
// s is now equal to "o"
// strings is equal to ["h", "e", "l", "l"]
s += "C";
// s is now equal to "oC"
strings.add(s);
// strings is equal to ["h", "e", "l", "l", "oC"]
Run Code Online (Sandbox Code Playgroud)