我在java中使用arraylist。 我写了以下代码:
public void myfunction() {
cmdMessage="str1 : root;str2 : cisco123,12345,2345;str1 : root234;str2 : cccccc";
String[] splitMessage = cmdMessage.split(";");
System.out.println("string length is \n" + splitMessage.length);
ArrayList<String> mylist = new ArrayList<>();
ArrayList<ArrayList> finalresult = new ArrayList<>();
for (int i= 0; i<= splitMessage.length-1;i++){
if(splitMessage[i]!=null){
if (splitMessage[i].contains("str1")){
System.out.println("splitted string is "+ (splitMessage[i]).split(":")[1].trim());
mylist.add(((splitMessage[i]).split(":")[1]).trim());
}
if (splitMessage[i].contains("str2")){
System.out.println("str2 length is ..." + splitMessage[i].length());
System.out.println("splitted str2 string is "+ (splitMessage[i]).split(":")[1].trim());
mylist.add(((splitMessage[i]).split(":")[1]).trim());
}
}
finalresult.add(mylist);
}
}
这个 Java 函数给出的结果为:
[[root, cisco123,12345,2345, root234, cccccc],[root, cisco123,12345,2345, root234, cccccc]]
但我想要这样的结果:
[[root, cisco123,12345,2345], [root234, cccccc]]
我认为我在某处缺少声明/初始化
技巧。
如何得到这个结果?
最佳答案
尝试将 mylist
的初始化移至 for 循环中。
关于java - 如何以所需格式打印数组列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20652892/