[Ava]配列

18953 ワード

1.配列
インデックスを使用して、同じデータ型を簡単に効率的に管理できる複数のデータです.
EX)アレイ長がnの場合、
インデックス1インデックス2インデックス3...インデックスn-1データデータデータデータ...データ#データ#
2.アレイの宣言と初期化
配列も変数と同様に、宣言と初期化プロセスで使用されます.
アレイを宣言するときに、アレイのタイプとサイズを決定し、その後のアレイのサイズが変わらないことを確認します.
2.1. アレイ宣言後の初期化
int[] arr1 = new int[5]; 

arr1[0] = 10;
arr1[1] = 20;
arr1[2] = 30;
arr1[3] = 40;
arr1[4] = 50;

System.out.println("arr1[0] : " + arr1[0]); // arr1[0] : 10
System.out.println("arr1[1] : " + arr1[1]); // arr1[1] : 20
System.out.println("arr1[2] : " + arr1[2]); // arr1[2] : 30
System.out.println("arr1[3] : " + arr1[3]); // arr1[3] : 40
System.out.println("arr1[4] : " + arr1[4]); // arr1[4] : 50
2.2. アレイの同時宣言と初期化
int[] arr2 = [100, 200, 300, 400, 500]

System.out.println("arr1[0] : " + arr1[0]); // arr1[0] : 100
System.out.println("arr1[1] : " + arr1[1]); // arr1[1] : 200
System.out.println("arr1[2] : " + arr1[2]); // arr1[2] : 300
System.out.println("arr1[3] : " + arr1[3]); // arr1[3] : 400
System.out.println("arr1[4] : " + arr1[4]); // arr1[4] : 500
3.アレイとメモリ
配列を構成するデータのデータ型は、配列のメモリサイズを決定します.
  • EX)int[] arr = new int[3];→int型4バイト*3=12バイト
  • 基本データ型データを含む変数とは異なり、配列はオブジェクトデータ型であるため、配列変数は配列データのアドレスを含む.
    4.配列のデフォルト属性
    4.1. アレイの長さ
    int[] arr1 = { 10, 20, 30, 40, 50 }
    
    System.out.println( arr1.length ); // 5
    4.2. アレイ要素出力
    int[] arr1 = { 10, 20, 30, 40, 50 }
    
    System.out.println( Arrays.toString(arr1) ); // [ 10, 20, 30, 40, 50 ]
    4.3アレイのコピー
    配列要素レプリケーション:配列データのアドレスではなく、配列内の要素のみをレプリケーションします.
    配列参照はいちさんしょう:配列データのアドレスをコピーはいちでーたのばんちをこぴー
    int[] arr1 = { 10, 20, 30, 40, 50 }
    int[] arr2 = null;
    int[] arr3 = null;
    
    // 배열 요소 복사
    arr2 = Arrays.copyOf( arr1, arr1.length ); 
    System.out.println( Arrays.toString(arr2) ); // [ 10, 20, 30, 40, 50 ]
    
    // 배열 레퍼런스
    arr3 = arr1 
    System.out.println("arr1 : " + arr1); // arr1 : [I@4554617c]
    System.out.println("arr2 : " + arr2); // arr2 : [I@4554617c]
    System.out.println("arr3 : " + arr3); // arr3 : [I@74a14482]
    5.多次元配列
    アレイに別のアレイが存在する可能性があります.
    int[][] arr = new int[3][2]; // [행][열]
    arr[0][0] = 1;
    arr[0][1] = 10;
    arr[1][0] = 2;
    arr[1][1] = 20;
    arr[2][0] = 3;
    arr[2][1] = 30;
    
    System.out.println( Arrays.toString(arr[0]) ); // [1, 10]
    System.out.println( Arrays.toString(arr[1]) ); // [2, 20]
    System.out.println( Arrays.toString(arr[2]) ); // [3, 30]