본문 바로가기

언어/Java

[ 자바 / Java ] 따라하다 보면 - 배열을 사용한 예제

반응형

Java에서 배열은 다양한 데이터 관리와 처리 작업에 활용될 수 있습니다. 아래에 배열을 효과적으로 활용하는 5가지 예제를 만들어 설명하겠습니다.

예제 1: 배열의 합계와 평균 계산

배열을 사용하여 주어진 숫자들의 합계와 평균을 계산할 수 있습니다.

public class ArraySumAverageExample {
    public static void main(String[] args) {
        // 정수형 배열 선언 및 초기화
        int[] numbers = { 10, 20, 30, 40, 50 };

        int sum = 0;

        // 배열의 모든 요소의 합을 계산
        for (int i = 0; i < numbers.length; i++) {
            sum += numbers[i];
        }

        // 평균 계산
        double average = (double) sum / numbers.length;

        // 결과 출력
        System.out.println("Sum: " + sum);
        System.out.println("Average: " + average);
    }
}

설명:

  • numbers라는 정수형 배열을 선언하고 초기화합니다.
  • for 문을 사용하여 배열의 모든 요소를 순회하며 합계를 계산합니다.
  • 배열의 요소 개수로 합계를 나누어 평균을 계산합니다.
  • 합계와 평균을 출력합니다.

예제 2: 배열 요소의 최대값과 최소값 찾기

배열에서 최대값과 최소값을 찾는 방법을 보여줍니다.

public class ArrayMaxMinExample {
    public static void main(String[] args) {
        // 정수형 배열 선언 및 초기화
        int[] numbers = { 3, 5, 7, 2, 8, -1, 4 };

        // 초기 최대값과 최소값을 배열의 첫 번째 요소로 설정
        int max = numbers[0];
        int min = numbers[0];

        // 배열의 모든 요소를 순회하며 최대값과 최소값을 찾기
        for (int i = 1; i < numbers.length; i++) {
            if (numbers[i] > max) {
                max = numbers[i];
            }
            if (numbers[i] < min) {
                min = numbers[i];
            }
        }

        // 결과 출력
        System.out.println("Maximum value: " + max);
        System.out.println("Minimum value: " + min);
    }
}

설명:

  • numbers라는 정수형 배열을 선언하고 초기화합니다.
  • 배열의 첫 번째 요소를 초기 최대값과 최소값으로 설정합니다.
  • for 문을 사용하여 배열의 나머지 요소를 순회하며 최대값과 최소값을 업데이트합니다.
  • 최대값과 최소값을 출력합니다.

예제 3: 배열 요소의 역순 출력

배열의 요소를 역순으로 출력하는 방법을 보여줍니다.

public class ArrayReversePrintExample {
    public static void main(String[] args) {
        // 정수형 배열 선언 및 초기화
        int[] numbers = { 1, 2, 3, 4, 5 };

        // 배열 요소를 역순으로 출력
        System.out.print("Reversed array: ");
        for (int i = numbers.length - 1; i >= 0; i--) {
            System.out.print(numbers[i] + " ");
        }
    }
}

설명:

  • numbers라는 정수형 배열을 선언하고 초기화합니다.
  • for 문을 사용하여 배열의 마지막 요소부터 첫 번째 요소까지 역순으로 출력합니다.

예제 4: 배열의 요소를 정렬하기 (버블 정렬)

배열의 요소를 오름차순으로 정렬하는 방법을 버블 정렬 알고리즘을 사용하여 설명합니다.

public class ArrayBubbleSortExample {
    public static void main(String[] args) {
        // 정수형 배열 선언 및 초기화
        int[] numbers = { 64, 34, 25, 12, 22, 11, 90 };

        int n = numbers.length;
        // 버블 정렬 알고리즘을 사용하여 배열 정렬
        for (int i = 0; i < n - 1; i++) {
            for (int j = 0; j < n - i - 1; j++) {
                if (numbers[j] > numbers[j + 1]) {
                    // 두 요소를 교환
                    int temp = numbers[j];
                    numbers[j] = numbers[j + 1];
                    numbers[j + 1] = temp;
                }
            }
        }

        // 정렬된 배열 출력
        System.out.print("Sorted array: ");
        for (int i = 0; i < n; i++) {
            System.out.print(numbers[i] + " ");
        }
    }
}

설명:

  • numbers라는 정수형 배열을 선언하고 초기화합니다.
  • 버블 정렬 알고리즘을 사용하여 배열을 오름차순으로 정렬합니다.
  • 정렬된 배열을 출력합니다.

예제 5: 2차원 배열을 사용하여 행렬 덧셈

2차원 배열을 사용하여 두 행렬을 더하는 방법을 보여줍니다.

public class MatrixAdditionExample {
    public static void main(String[] args) {
        // 두 개의 2차원 배열(행렬) 선언 및 초기화
        int[][] matrix1 = {
            {1, 2, 3},
            {4, 5, 6},
            {7, 8, 9}
        };

        int[][] matrix2 = {
            {9, 8, 7},
            {6, 5, 4},
            {3, 2, 1}
        };

        // 두 행렬의 크기
        int rows = matrix1.length;
        int cols = matrix1[0].length;

        // 결과 행렬을 저장할 배열
        int[][] result = new int[rows][cols];

        // 두 행렬의 요소를 더하기
        for (int i = 0; i < rows; i++) {
            for (int j = 0; j < cols; j++) {
                result[i][j] = matrix1[i][j] + matrix2[i][j];
            }
        }

        // 결과 행렬 출력
        System.out.println("Sum of matrices:");
        for (int i = 0; i < rows; i++) {
            for (int j = 0; j < cols; j++) {
                System.out.print(result[i][j] + " ");
            }
            System.out.println();
        }
    }
}

설명:

  • 두 개의 3x3 행렬을 2차원 배열로 선언하고 초기화합니다.
  • 결과를 저장할 새로운 2차원 배열을 선언합니다.
  • 중첩된 for 문을 사용하여 두 행렬의 같은 위치에 있는 요소들을 더하고, 결과 배열에 저장합니다.
  • 결과 행렬을 출력합니다.

결론

위의 예제들은 Java에서 배열을 다양한 방식으로 활용하는 방법을 보여줍니다. 배열은 여러 데이터를 효율적으로 관리하고, 다양한 연산을 수행할 수 있는 강력한 도구입니다. 이러한 기초적인 예제를 통해 배열의 선언, 초기화, 사용법을 이해하고 더 복잡한 문제에도 응용할 수 있는 기초를 다질 수 있습니다.

반응형