如何在Java中声明和初始化数组?


当前回答

此外,如果您需要更动态的内容,可以使用List界面。这不会表现得很好,但更灵活:

List<String> listOfString = new ArrayList<String>();

listOfString.add("foo");
listOfString.add("bar");

String value = listOfString.get(0);
assertEquals( value, "foo" );

其他回答

有多种方法可以在Java中声明数组:

float floatArray[]; // Initialize later
int[] integerArray = new int[10];
String[] array = new String[] {"a", "b"};

您可以在Sun教程网站和JavaDoc中找到更多信息。

另一种声明和初始化ArrayList的方法:

private List<String> list = new ArrayList<String>(){{
    add("e1");
    add("e2");
}};

要创建类对象的数组,可以使用java.util.ArrayList.来定义数组:

public ArrayList<ClassName> arrayName;
arrayName = new ArrayList<ClassName>();

为数组赋值:

arrayName.add(new ClassName(class parameters go here);

从阵列中读取:

ClassName variableName = arrayName.get(index);

注:

variableName是对数组的引用,这意味着操纵variableName将操纵arrayName

对于循环:

//repeats for every value in the array
for (ClassName variableName : arrayName){
}
//Note that using this for loop prevents you from editing arrayName

for循环,允许您编辑arrayName(常规for循环):

for (int i = 0; i < arrayName.size(); i++){
    //manipulate array here
}

或者,

// Either method works
String arrayName[] = new String[10];
String[] arrayName = new String[10];

它声明了一个名为arrayName的数组,大小为10(您可以使用元素0到9)。

如果“array”是指使用java.util.Arrays,那么可以使用:

List<String> number = Arrays.asList("1", "2", "3");

// Out: ["1", "2", "3"]

这个非常简单明了。