【问题标题】:java int[] val or int val[]java int[] val 或 int val[]
【发布时间】:2012-12-24 00:38:14
【问题描述】:

我是 Java 新手,我知道这是一个愚蠢的问题,但我无法理解 Java 如何初始化他的变量。我试图做一些测试,但我不知道这是如何工作的。

我在学习C或Java编程时,定义一个新变量的语法是这样的:

type name;
int value;

还有一个整数数组:

type name[];
int values[];

在 Java int[] val; 中,这将是数组中的数组吗?

例如:

int[] val = new int[2];

val[0] = 012345; // Error ?

上面的ex是正确的。那么也就是说下面的例子是一样的吗?

int val[] = new int[2];
val[0] = 123;
val[1] = 456;

int[] val2 = new int[2];
val2[0] = 789;
val2[0] = 101;

【问题讨论】:

标签: java arrays initialization integer


【解决方案1】:

是的int val[] = new int[2];int[] val2 = new int[2]; 完全相同。

来自Java Language Specification

[] 可以作为类型的一部分出现在声明的开头,或者作为特定变量的声明符的一部分,或者两者兼而有之

所以即使是像

int[] val2[] = new int[2][3]

对于二维数组是正确的(虽然不寻常)。

【讨论】:

  • @mikera 在这个问题之前也不知道 :)
【解决方案2】:

两个声明的含义相同。

int val[] = new int[2];
int[] val2 = new int[2];

但是,您应该使用 first 表示法。大多数程序员认为它更具可读性。

【讨论】:

  • 我相信你的意思是说大多数 C 程序员认为第一种形式更具可读性。
  • 以下是类型:StringdoubleList<Long>int[]。因此,数组说明符[]type 的一部分,而不是变量名的一部分。您应该使用 second 表示法。 :)
  • 还好我们没有三种声明方式。第三条评论会说“新”版本最易读:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-13
  • 2018-03-26
  • 1970-01-01
  • 2019-09-29
  • 1970-01-01
  • 2018-03-19
相关资源
最近更新 更多