오늘도 열심히 복습하러 왔습니다 !
저번에 올렸던 블로그에 문제를 드렸는데 풀어 보셨나요 ?
아직도 저는 어렵기에 .. 다시 풀어보는 차원에서 풀이를 적어볼까 합니다 !
풀이를 적으면서 다른 문제의 풀이도 적어볼까 합니다!
《1차원 배열의 문제풀이》
//문]일차원 배열을 크기 순서대로 재 배치후 출력하자.(내림차순으로)
int [] num = {100,90,65,45,1999,68,923,36,12,100000}
for(int i=0;i<num.length-1;i++){
for(int k=i+1; k< num.length;k++){
if(num[i] < num[k]) {
int temp = num[k];
num[k] = num[i];
num[i] = temp;
}
}
}
for(int i=0;i<num.length;i++) System.out.printf("%d",num[i]);
//출력값
100000 1999 923 100 90 68 65 45 36 12
//문]num배열에 저장된 값 중 최대값을 구하여라.
int max = num[0];
for(int i=1;i<num.length;i++)
if(max < num[i]) max = num[i];
//출력값
100000
이렇게 1차원 배열에 대한 문제들의 풀이를 적어봤습니다 😚😚
오늘은 2차원 배열에 대해 적어볼게요
《2차원 배열》
1차원 배열이 수직으로 쌓인 것으로, 데이터를 행과 열로 구성하여 저장합니다
즉, 표 형태의 데이터를 다룰 때 주로 사용합니다.
arrNum = new int[2][3];//2는 행의 수,3은 열의 수를 뜻한다.
《2차원 배열의 예제》
arrNum[0][0]=1;
arrNum[0][1]=2;
arrNum[0][2]=3;
arrNum[1][0]=4;
arrNum[1][1]=5;
arrNum[1][2]=6;
for(int i=0;i < 2;i++) {//i를 행인덱스로
for(int k=0;k < 3;k++) {//k를 열인덱스로
System.out.printf("(%d행,%d열):%-3d",i,k,arrNum[i][k]);
}
System.out.println();//줄바꿈
}
//출력값
(0행,0열):1 (0행,1열):2 (0행,2열):3
(1행,0열):4 (1행,1열):5 (1행,2열):6
2차원 배열도 마찬가지로 {}로 사용으로 바깥 {}는 초기화를 위한 중괄호(초기화자)
바깥 {}안의 {}의 수가 행의 수를 의미하고, 안쪽 {}안의 값의 수가 열의 수를 의미합니다
int[][] arrInit = {{1,2},{3,4,5},{6}};
for(int i=0;i < arrInit.length;i++) {//i를 행인덱스로
for(int k=0;k < arrInit[i].length;k++) {//k를 열인덱스로
System.out.printf("(%d행,%d열):%-3d",i,k,arrInit[i][k]);
}
System.out.println();//줄바꿈
}
이번에도 저번처럼 문제를 들릴까 합니다 ~~
저도 역시 다시 풀어볼 계획입니당 ~~~
/*
1 9 9 9 9
9 1 9 9 9
9 9 1 9 9
9 9 9 1 9
*/
//문1]2차원 배열 선언과 동시에 메모리를 할당해라.
//문2]위의 값을 문1]번에서 선언한 배열에 저장해라.
//문3]2차원 배열에 저장된 값을 위 모양대로 출력하여라.
그럼 저는 내일 또 작성하러 오겠습니다 ~
'IT의 다이어리 > JAVA' 카테고리의 다른 글
Java의 1차원 배열 (0) | 2024.11.25 |
---|---|
Java의 Switch문과 while문 (0) | 2024.11.22 |
Java의 IF else문과 For문 (1) | 2024.11.20 |
JAVA의 할당연산자와 IF문 조건식 (0) | 2024.11.19 |
Java의 Escape 문자& 연산자 (3) | 2024.11.18 |