違いはありますか
int[] array = new int[10];
と
int array[] = new int[10];
?
どちらも機能し、結果はまったく同じです。どちらが速いですか、それとも優れていますか? 推奨するスタイルガイドはありますか?
違いはありますか
int[] array = new int[10];
と
int array[] = new int[10];
?
どちらも機能し、結果はまったく同じです。どちらが速いですか、それとも優れていますか? 推奨するスタイルガイドはありますか?
どちらも同等です。以下を見てください。
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()[]
{
// ..
}
JLS http://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 = new int[10];
JLSから:
[] は、宣言の先頭の型の一部として、または特定の変数の宣言子の一部として、またはその両方として表示される場合があります。
どちらも同じです。int[] array = new int[10];
タイプの(連続した)可読性が優れているため、私は通常 を使用しint[]
ます。
いいえ、違いはありません。しかし、int[] array
読みやすいので、使用することを好みます。
これら 2 つの宣言に違いはなく、どちらのパフォーマンスも同じです。
ほとんど違いはありません。
どちらの例でもnew int[10]
、参照変数に a を代入しています。
どちらの方法で参照変数に割り当てても、パフォーマンスは同じになります。
int[] array = new int[10];
上記の表記は、読みやすくするためのベスト プラクティスと見なされます。
乾杯