public class Main {
public static void main(String[] args) {
// 1. 배열 선언
// int[] arr;
// 2. 배열 길이 할당
// arr = new int[5];
// arr = [] [] [] [] []
// 3. 배열 선언과 길이 동시에 할당
// int[] arr = new int[5];
// arr = [] [] [] [] [] <- 빈공간
// 4. 배열 선언과 동시에 배열의 요소 할당
int[] arr = {10,20,30,40,50};
// arr = [10] [20] [30] [40] [50]
// 배열의 길이
int arrLength = arr.length;
System.out.println("arrLength = " + arrLength); // 5
}
}
배열의 요소에 접근하려면 index(인덱스)를 활용해야한다.
index는 0부터 시작이다.
0 index = 1번째 요소
1 index = 2번째 요소
// 배열의 요소에 접근: 인덱스 활용 방법
int[] arr = {10,20,30,40,50};
// index > [0][1][2][3][4]
System.out.println("배열의 1번째 요소 접근: " + arr[0]);
System.out.println("배열의 2번째 요소 접근: " + arr[1]);
System.out.println("배열의 3번째 요소 접근: " + arr[2]);
System.out.println("배열의 4번째 요소 접근: " + arr[3]);
System.out.println("배열의 5번째 요소 접근: " + arr[4]);
public class EvenNumberFinder {
public static void main(String[] args) {
int[] arr = {3,4,7,10,15,20};
System.out.print("짝수: ");
for(int i = 0; i < arr.length; i++){
if (arr[i]%2==0) {
System.out.print(arr[i] + " ");
}
}
}
}
1차원 정수 배열 요소들의 누적합
public class PrefixSum {
public static void main(String[] args) {
int[] arr = {2,5,8};
int a = 0;
for (int i=0; i<arr.length; i++){
a += arr[i];
}
System.out.println("배열 요소들의 누적합: " + a);
}
}
2차원 배열 > 2x2 바둑판에서 흑돌의 좌표를 구하시오
public class BlackStoneFinder {
public static void main(String[] args) {
//검은돌(true) 좌표(x,y) 찾기
//배열 board 선언 + 요소 할당
boolean[][] board = {
{true, false},
{false, true}
};
// 클래식 for문
System.out.println("====클래식 for문====");
for (int x = 0; x < board.length; x++) {
for (int y = 0; y < board[x].length; y++) {
if (board[x][y]) {
System.out.println("검은돌 위치: (" + x + "," + y + "), "+ "값: " + board[x][y]);
}
}
}
// 향상된 for문
System.out.println("====향상된 for문====");
int a = 0;
for (boolean[] row : board){
int b = 0;
for (boolean cell : row){
if(cell) {
System.out.println("검은돌 위치: (" + a + "," + b + "), "+ "값: " + cell);
}
b++;
}
a++;
}
}
}