GitHub

https://github.com/Backcoder-June

BackCoder 기록 그리고 숙달

Back to the Java

배열을 품은 배열 - 이차 배열

Backcoder 2022. 6. 23. 12:43

< 이차배열 > 
int, double, boolean,char, String 다 배열을 만들 수 있는 Data type 들이다. 

+ "배열" 으로도 배열을 만들수가 있다. =>  이차배열  

int[ ] a = { 1, 2, 3, 4, 5 };       

int[ ][ ] a ={  {1,2,3,4,5}, {1,2,3}, {1,2}  } ; => 2차원 배열
=>int[ ][ ] a = new int[3][ ];   << inner 배열의 크기가 제각각 다를땐 비워놓고  
a[0] = new int[5];                      밑에서 따로따로 선언 
a[1] = new int[3];
a[2] = new int[2]; 


int[ ][ ] a ={  {1,2}, {2,3}, {3,4}  };   => inner 배열 크기가 다 같을 때는 
=> int[ ][ ] a = new int[3][2]             한번에 선언 가능 

 

2차배열 값을 뽑을 때는 for문 중복을 사용할 수 있다. 

for( int a  =0; a<array.length; a++) {

           for(int b =0; b<array[a].length; b++){

            

            System.out.println(array[a][b]);    }  }  

 

 

< 응용 >

int[][] array2 = new int[3][];
        String[] student_name = new String[args.length];

        int sum = 0;
        int avg = 0;

        for (int i =0; i<array2.length; i++){
            System.out.println("학생이름 : "+ args[i]);
            array2[i] = new int[i + 2];
//            System.out.println(array2[i].length);
            for (int j =0; j<array2[i].length; j++) {
                array2[i][j] = (int)(Math.random()*100)+1;
                System.out.print("점수 : {" + array2[i][j]+"}\t");

                sum = sum+array2[i][j];
                avg = sum / array2[i].length;

            }
            System.out.println("/ 총합 : "+ sum +" /  평균 : "+ avg );

            sum =0;
            avg =0;
        }