如何在Java中的String[]
中添加String[]
?为了更清楚,我想要的输出是:
String[][] out = {{"A", "AA"},{"B", "BB"}};
我不知道输出数组的大小,它可以包含两个以上的元素。基本上,我想这样做(不要介意它是Python的混合语法):
String [] out;
String[] temp = {"A","AA"};
out.append(temp)
所以现在看起来应该像{{"A","AA"}}
。然后我可以追加{"B", "BB"}
创建上面的欲望输出?这就是我的想法,但我不确定它是否可以完成。我对Python更有经验,可以在Python中完成,但我想用Java做到这一点。有任何想法吗?
答案 0 :(得分:3)
与上述评论一样,您可以使用List
将所有数组值存储在其中。
当你输入时:
List<String[]> list = new ArrayList<>();
String[] array = {"A", "B"};
list.add(array);
...
当你离开的时候:
String[] array = list.get(0 /*i*/);
答案 1 :(得分:2)
尝试使用List来实现此目的,因为您需要在列表上执行更多操作而不是数组。
List<List<String>> out = new ArrayList<>();
List<String> temp = new ArrayList<String>();
temp.add("A");
temp.add("AA");
out.add(temp);
阅读Javadocs以获取更多信息。
答案 2 :(得分:2)
您可以使用动态增长的List或ArrayList。
List<List<String>> addresses = new ArrayList<List<String>>();
ArrayList<String> singleAddress = new ArrayList<String>();
singleAddress.add("17 Fake Street");
singleAddress.add("Phoney town");
singleAddress.add("Makebelieveland");
addresses.add(singleAddress);
ArrayList类扩展了AbstractList并实现了List接口。 ArrayList支持可以根据需要增长的动态数组。
标准Java数组具有固定长度。创建数组后,它们无法增长或缩小,这意味着您必须事先知道数组将包含多少元素。
使用初始大小创建数组列表。超过此尺寸时,将自动放大该集合。删除对象后,阵列可能会缩小。
对于List和ArrayList link
之间的差异Type List vs type ArrayList in Java
如果您确实想要将动态数组字符串添加到另一个动态数组中,也可以尝试这种方式。
Form
答案 3 :(得分:2)
因为在Java中,数组是固定长度的数据结构,因此您应该尝试支持动态插入和删除元素的java List
。使用java.util.ArrayList
的示例如下:
java.util.List<String[]> out = new java.util.ArrayList<String[]>();
String[] temp = {"A","AA"};
out.add(temp);//insertion
使用索引(从0
开始),我们可以获取out.get(0);
这样的元素,并且可以删除out.remove(0);
等元素