0

我之前说过,我对 Java 真的很陌生。我也已经在使用 PHP。如果我理解正确,我们需要给 java 数组的长度。那么自动进入呢?

在php中

<?php 

$data[] = 15;
$data[] = 18;
$data[] = 40;

print_r($data);

?>

输出:

Array ( [0] => 15 [1] => 18 [2] => 40 )

如您所见,我没有定义数组的长度(这不是我的问题)。PHP 可以自动定义键。我不需要使用 like $data[0] = 15; $data[1] = 18;。在java中如何做到这一点?我需要像下面这样使用吗?

int dizi[] = new int[3];
dizi[0] = 15;
dizi[1] = 18;
dizi[2] = 40;

有什么办法吗?

4

6 回答 6

3

数组的长度是静态的。List、Map 等集合的长度不是。例如,请改用 List。

List<String> exampleList = new ArrayList<>(); // Java 7 needed for diamond init
exampleList.add("test");
exampleList.add("test1");
exampleList.add("test2");
exampleList.add("test3");

for(str : exampleList){
    System.out.println(str);
}

要初始化一个数组,无论您是否这样做,您都需要提前知道它的大小

int[] arr = new int[10];

或者

int[] arr = new int[]{1,2,3,4,5,6,7,8,9,10};

注意:对于以前版本的 java,您需要编写List<String> exampleList = new ArrayList<String>();. List<String> exampleList = new ArrayList<>();不会在 pre java 7 版本中编译。

于 2013-07-25T12:36:12.050 回答
2

考虑使用List,例如ArrayList

它没有预定义的大小,您可以添加任意数量的元素。例如:

List<String> list = new ArrayList<String>();
list.add("a string");
list.add("another string");
于 2013-07-25T12:35:26.560 回答
1

您可以在创建数组时像这样初始化数组:

int[] dizi = new int[] {1, 2, 3, 4};
于 2013-07-25T12:35:50.563 回答
1

不可能。您应该改用ArrayList。它提供了舒适的修改操作,并且toArray()如果您真的需要它,您可以随时再次获得本机数组。

于 2013-07-25T12:36:16.410 回答
1

你也可以写:

int[] anArray = { 
    100, 200, 300,
    400, 500, 600, 
    700, 800, 900, 1000
};

看这里:

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html

于 2013-07-25T12:36:58.023 回答
1

在 Java 中,您必须使用List或 Vector 来增长数组。

然后

List<String> list=new ArrayList<>();
list.add("a");
list.add("b");
于 2013-07-25T12:37:13.117 回答