☕
java handbook
  • Part 01. Hello World!
    • Java 환경설정
    • Java 학습 Flow
    • JVM
    • 변수
      • 상수와 리터럴
      • 기본형과 참조형
      • 문자와 문자열
  • Part 02. 연산자
    • 증감 연산자와 부호 연산자
    • 형변환 연산자와 자동 형변환
    • 사칙 연산자와 산술변환
    • Math 클래스와 나머지 연산자
    • 비교 연산자와 문자열의 비교
    • 논리 연산자와 비트 연산자
    • 조건 연산자와 대입 연산자
  • Part 03. 조건문과 반복문
    • IF
    • SWITCH
    • FOR
    • 임의의 정수 만들기
    • WHILE
    • break 와 continue
  • Part 04. 배열
    • 배열의 길이와 초기화
    • 배열 연습하기
    • String 배열
    • 2차원 배열
    • Array
  • Part 05. 객체지향
    • 클래스와 객체
    • 객체의 생성과 배열
    • 클래스의 정의
    • 변수의 종류
    • 메서드
    • 기본형 매개변수 와 참조형 매개변수
    • static 메서드와 인스턴스 메서드
    • 오버로딩
    • 생성자
    • this 와 this()
    • 변수의 초기화
Powered by GitBook
On this page
  • 배열의 출력
  • 총합과 평균
  • 최대값과 최소값
  • 랜덤으로 숫자 섞기
  1. Part 04. 배열

배열 연습하기

배열의 출력

  • 아래 예제코드로 학습해 보겠습니다.

class Arrays3_1 {
    public static void main(String[] args) {
        int[] arr = {100, 90, 80, 70, 60, 50, 40, 30, 20, 10};
        //  배열을 가리키는 참조 변수 arr 을 출력
        System.out.println("arr = " + arr); 
        // 메모리 주소와 비슷한 문자열이 출력 -> 실제 주소는 아닙니다.
        // [I@7a81197d -> [(배열을 뜻함), I(int 타입을 뜻함), @(위치를 뜻함)

        // 예외 확인 하기 - char[]
        char[] chArr = {'a', 'b', 'c', 'd'};
        System.out.println(chArr); // abcd 가 출력되는데 이는 println 메서드의 기능 때문!

        // 배열의 요소 하나씩 출력하기
        for (int i = 0; i < arr.length; i++) {
            System.out.println("arr[" + i + "] = " + arr[i]);
        }
        
        // Arrays.toString(배열) : 배열의 모든 요소를 문자열로 만들어서 반환한다.
        System.out.println("Arrays.toString(arr) = " + Arrays.toString(arr));
    }
}

총합과 평균

배열의 모든 요소를 더해서 총합과 평균을 구하라!

  • 아래 예제코드로 학습해 보겠습니다.

class Arrays3_2 {
    public static void main(String[] args) {
        int sum = 0; // 총합을 저장
        float avg = 0f; // 평균을 저장

        int[] score = {100, 40, 33, 50, 77, 29};

        for (int i = 0; i < score.length; i++) {
            System.out.println("score[" + i + "] = " + score[i]);
            sum += score[i];
        }

        avg = sum / (float) (score.length); // 계산결과를 float 타입으로 얻기 위해 형변환

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

최대값과 최소값

배열의 요소 중에서 가장 큰 값과 가장 작은 값을 찾아라!

  • 아래 예제코드로 학습해 보겠습니다.

class Arrays3_3 {
    public static void main(String[] args) {
        int[] score = {65, 97, 88, 43, 33, 91, 28};

        int max = score[0]; // 최대값을 배열의 첫 번째 값으로 초기화 한다.
        int min = score[0]; // 최소값을 배열의 첫 번째 값으로 초기화 한다.

        for (int i = 0; i < score.length; i++) {
            if (score[i] > max) {
                max = score[i];
            } else if(score[i] < min) {
                min = score[i];
            }
        }

        System.out.println("최대값 = " + max);
        System.out.println("최소값 = " + min);
    }
}

랜덤으로 숫자 섞기

  • 아래 예제코드로 학습해 보겠습니다.

class Arrays3_4 {
    public static void main(String[] args) {
        int[] numArr = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
        System.out.println("원본 = " + Arrays.toString(numArr));

        for (int i = 0; i < numArr.length; i++) {
            int num = (int) (Math.random() * 10); // 0 ~ 9 의 랜덤 수

            int tmp = numArr[0]; // 배열의 첫 번째 수로 계속 초기화 된다.

            // 랜덤한 위치의 값과 배열의 첫 번째 수가 서로 바뀐다.
            numArr[0] = numArr[num];
            numArr[num] = tmp;

            System.out.println(i + 1 + " 번째 변경 : " + Arrays.toString(numArr));
        }

        System.out.println("결과 = " + Arrays.toString(numArr));
    }
}

Ref. Java의 정석 기초편 Chapter5(6, 7, 8, 9, 10, 11)

Previous배열의 길이와 초기화NextString 배열

Last updated 2 years ago

Ref. , ,

출력
활용1
활용2