配列の作成と使用@ノートに書くのが面倒なのでココにメモ
・配列は複数の値の集合を1つにまとめて扱うためのインスタンス
・配列の特徴①同じ型もしくは互換性のある値だけ②扱えるインスタンスは生成時に決定
・配列型変数の宣言時に、要素数は指定できない(要素数は配列インスタンスの生成時)
・配列の生成時のコンパイルエラー①要素数を指定しなかった場合 int array = new int; ②要素数に浮動小数点を記述した場合 int array = new int[2,3]; (long型も☓)
・Item items = new Item[3]; →3つのItemしか扱わない配列インスタンスを生成している
・配列要素のデフォルト値:整数型(0)、浮動小数点型(0,0)、真偽型(false)、文字数型(¥u0000)、オブジェクト型(null)
・配列インスタンスと要素の値は異なる
・要素の値が変わっても配列そのものが影響を受けることはない
・newと初期化演算子の両方を使った場合、の中に要素数を指定してはいけない。ex)☓:int array = new int[2]{2,3};(コンパイルエラーになる) ○:int array = new int{2,3};
・要素数ゼロの配列インスタンスの生成例①int array = {}; ②int array = new int[0];
・初期化演算子は「変数宣言と同時にしか使えない」が、明示的に次元数を記述した場合は別 int array; array = new{};
・nullにlengthは存在しない。そのため、nullにlengthを使用すると「nullPointerException」が発生する
・StringクラスはObjectクラスを継承している。継承関係にある型同士であれば配列として扱える
・すべての配列型変数はObject型変数に暗黙的に型変換できる(すべてのクラスはObject型を暗黙的に継承しているから)
・cloneメソッドは配列の内容をそのままコピーする
・int arrayA={1,2,3,4}; int = arrayB = arrayA.clone(); →arrayA == arrayB (false)
・System.arraycopy(arrayA,1,arrayB,0,4) →引数2と4は、どこからコピーを始めるか
。引数5はコピー数をする数