如何在java

时间:2017-01-24 01:13:57

标签: java android arrays

我是java的新手,在没有指定数组索引的情况下,将值添加/传递给数组字符串的正确方法是什么。

我想在数组中添加一个值,就像在php数组中那样。

static String[] var_productname = new String[20];

public void setProductName(String productName){
    var_productname[] = productName;

}

4 个答案:

答案 0 :(得分:2)

您可以将List实施用作ArrayList

根据您的示例:

static List<String> var_productname = new ArrayList<>();

public void setProductName(String productName){
    var_productname.add(productName);

}

初始容量是可选的,但您可以使用new ArrayList<>(20)实例化数组,其中20是初始(非最大)容量。

答案 1 :(得分:1)

如果您只是在调用setProductName时试图避免指定索引,这是一个简单的方法。 (但是,该方法将在内部使用并更新索引。)

请注意,如果您尝试追加超过20个字符串,则此简单实现将引发异常。此外,我制作了setProductName static方法,因为您制作了var_productname static,因此更有意义。

static String[] var_productname = new String[20];
static int pnIndex = 0;

public static void setProductName(String productName) {
    var_productname[pnIndex++] = productName;
}

答案 2 :(得分:0)

数组不能直接附加元素,将数组更改为其他数据结构

答案 3 :(得分:0)

在这种情况下,你会选择一个名为Collections

的概念

Arrays的问题在于,您无法在运行时动态增加它的大小,并且您只能按照指定的长度添加值。

由于int[] nArray= new int[20];只会包含20个项目,因此无法进一步动态地将大小从20增加到21并添加元素。

如上所述,您可以进行任何List实施。