尝试在String Array中设置位置,抛出越界异常

时间:2014-03-26 05:53:33

标签: java arrays string

我正在尝试'添加'到我的String[]

我正在阅读一个BufferedFileReader的文件。我已将代码设置为返回String[],我们将其称为list。基本上我的代码循环遍历文件,直到它为空(好null),将每一行添加到string,然后将split() string添加到我的list中{1}}。

我担心,因为我这样做,list的大小为immutable,这就是为什么我会被Exception抛出。

如何以“正确”的方式编写以下代码?


代码

请注意,下面的list不是instantiated,只是出于标注目的。

String[] list;
int length = list.length;
list[length + 1] = (method that returns a string);
list[length + 2] = (method that returns a string);

持续5个空格。

我正在考虑这个因为我正在尝试将字段保存到文件中,并且为了避免覆盖我想要添加到其中的文件。


TL; DR:

基本上尝试添加到String[]或找到更好的替代方案,因为我无法更改长度。

3 个答案:

答案 0 :(得分:2)

你的问题不是那么明确。

如果我是正确的,你想通过动态定义数组大小

您最好使用java.util.ArrayList ..您可以动态更改Array的长度。

答案 1 :(得分:1)

  

String []或找到更好的选择,因为我无法改变   长度。

最好使用ArrayList。

ArrayList<String> ar=new ArrayList<String>(put capacity if you want);

您可以轻松删除arraylist中的搜索。

答案 2 :(得分:0)

List<String> list = new ArrayList<>();
list.add("hello");
list.add("world");

return list.toArray();