之间有区别吗
int[] array = new int[10];
和
int array[] = new int[10];
?
两者都起作用,结果完全相同。哪一个更快或更好?有推荐的款式指南吗?
它们基本上是相同的,没有任何类型的性能差异,但是推荐的是第一种情况,因为它更具可读性。
int[] array = new int[10];
来自JLS:
[]可以作为类型的一部分出现在声明的开头,或者作为特定变量的声明符的一部分,或者两者兼而有之。
来自JLShttp://docs.oracle.com/javase/specs/jls/se5.0/html/arrays.html#10.2
以下是不创建数组的数组变量声明示例:
int[ ] ai; // array of int
short[ ][ ] as; // array of array of short
Object[ ] ao, // array of Object
otherAo; // array of Object
Collection<?>[ ] ca; // array of Collection of unknown type
short s, // scalar short
aas[ ][ ]; // array of array of short
以下是创建数组对象的数组变量声明的一些示例:
Exception ae[ ] = new Exception[3];
Object aao[ ][ ] = new Exception[2][3];
int[ ] factorial = { 1, 1, 2, 6, 24, 120, 720, 5040 };
char ac[ ] = { 'n', 'o', 't', ' ', 'a', ' ',
'S', 't', 'r', 'i', 'n', 'g' };
String[ ] aas = { "array", "of", "String", };
[]可能作为类型的一部分出现在声明的开头,或者作为特定变量的声明符的一部分出现,或者两者都出现,如本例所示:
byte[ ] rowvector, colvector, matrix[ ];
本声明相当于:
byte rowvector[ ], colvector[ ], matrix[ ][ ];
两者是等价的。请看以下内容:
int[] array;
// is equivalent to
int array[];
int var, array[];
// is equivalent to
int var;
int[] array;
int[] array1, array2[];
// is equivalent to
int[] array1;
int[][] array2;
public static int[] getArray()
{
// ..
}
// is equivalent to
public static int getArray()[]
{
// ..
}
问题内容: 两者之间有区别吗 和 ? 两者都起作用,并且结果完全相同。哪个更快或更更好?是否有推荐的风格指南? 问题答案: 两者是等效的。看一下以下内容:
我正在尝试用java swing制作一个Tic-Tac-Toe程序,我已经制作了框架。如何让JButton数组中的按钮激活int数组?我希望int数组保存Tic-Tac-Toe网格中点的值,因此当按下按钮时,int数组中的对应点将是0或1,按钮的文本将更改为X或O。
问题内容: 我正在尝试将字符串转换为整数数组,以便随后可以对它们执行数学运算。我在以下代码方面遇到麻烦: 这给了我一个“无法转换的类型”错误,要求:int []发现:char我还尝试了其他一些方法,例如Character.getNumericValue,并且直接对其进行了直接分配,而没有进行任何修改。在那种情况下,无论我使用哪种转换方法或(!)字符串的实际值是什么,它总是输出相同的垃圾“ [I @
问题内容: 因为我有一个包含重复项的int数组的ArrayList,所以我想使用HashSet。不幸的是,我无法按需使用HashSet: 结果是: 有人可以告诉我我错了吗? 在此先感谢Dominique(java newbie) 问题答案: 数组不会在类中重写并实现,因此,只有当a1 == a2时,两个数组a1和a2 才被视为彼此相同,这在您的情况下是错误的。 如果使用s而不是数组,则将解决问题,
我有一个这样的字符串 我需要提取每个部分。我已经解析了前三个字符串(“Anderson,T”,CWS,SS),但现在我需要提取123,我在这方面遇到了一些问题。我在前三个字段中使用的方法是使用line。分裂 但我不能用线条。使用整型数组拆分。有人能帮我吗? 谢谢
我正在尝试制作一个程序,要求使用min和max以及数组的长度,根据用户输入的max和min(int或double),它将创建一个int或do倍的数组。我的代码的问题是,当我试图运行它时,编译器说变量尚未初始化。我假设做一个重载方法更好,但我不确定如何做。