将元素添加到Java Array

时间:2014-06-23 05:24:17

标签: java arrays

假设我们定义了一个包含20个元素的数组。我们有什么方法可以向数组中添加一些对象,当然没有任何特定顺序,而不仅仅是String[] t= {"one", "two", ..., "twenty"}一次?

String[] t = new String[20];
//I know this won't work
//but something like this:
//t = {"one", "two", "three"}
//and later, add some more
//t = {"four"} ...

6 个答案:

答案 0 :(得分:2)

有几种方法可以初始化Array

中的元素
String[] t = new String[20];
t[0] = "zero";
t[1] = "one";

您还可以使用System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length)从一个复制到另一个(如果这是您的意思)。这里将数组ab连接到新的数组c

String[] a = {"Hello"};
String[] b = {"World"};
String[] c = new String[a.length+b.length];
System.arraycopy(a, 0, c, 0, a.length);
System.arraycopy(b, 0, c, a.length, b.length);
System.out.println(Arrays.toString(c));

输出

[Hello, World]

答案 1 :(得分:1)

您无法更改数组的大小,但可以在特定位置指定元素。

t[3] = "four";

重新排序和记住阵列应该结束的位置可能会也可能不会变得很麻烦。

对于更灵活的"数组",人们喜欢使用java.util.ArrayList

答案 2 :(得分:1)

您可以指定像这样的值

t[10]  = "ten";
t[11]  = "eleven";

最好使用ArrayList,因此不需要先初始化大小,它也是动态的。

答案 3 :(得分:1)

不幸的是,这并不完全是java数组的工作方式。要实例化和初始化数组,请使用语法...

String[] t = new String[20];
t[0] = "One";
t[1] = "Two";

,或者

String[] t = {"One", "Two"};

如果您想要更多地控制阵列,我建议您使用ArrayList对象,而不是添加,删除,更改,排序数组中的项目。例如,

ArrayList t = new ArrayList();
t.add("One");
t.add("Two");
t.remove(0);

答案 4 :(得分:1)

ArrayList是一个很好的选项,ArrayList支持可以根据需要增长的动态数组。 使用数组,您可以通过指定要添加的特定位置来添加元素 比如添加位置4我们可以做array[3] = "four"之类的事情 但是为了更多的控制,建议使用arraylist

答案 5 :(得分:0)

不幸的是,Array应仅以下面的方式使用

String[] t = new String[20];
t[0] = "One";
t[1] = "Two";
...
t[19] = "Twenty";

您可以尝试使用arrayList:您甚至无需指定初始化时预期的元素数。

ArrayList t = new ArrayList();
t.add("One");
t.add("Two");
...
t.add("Twenty");