본문 바로가기
기초 및 언어/▶ Java&JSP

07. 배열

by 류딩이 2025. 8. 14.

1. 배열이란?

같은 자료형의 데이터를 하나의 이름으로 묶어서 저장하는 공간

  • 데이터마다 변수를 따로 만들 필요 없이, **번호(인덱스)**로 구분
  • 인덱스(index)는 0부터 시작
  • 크기는 고정 (한 번 만들면 길이 변경 불가)
  • 연속된 메모리를 갖는다. (주소가 쭉 연결되어 있다. int = 4byte,  double = 8byte) 등등
public class Ex01_1차원 {
    public static void main(String[] args) {
        // ===== 배열 선언 =====
        System.out.println("========배열 선언========");

        // 방법 1: 선언과 동시에 값 초기화
        int[] x = {10, 20, 30};

        // ===== 배열의 주소값 출력 =====
        System.out.println("========배열의 주소 값========");
        System.out.println("x :" + x);

        // ===== 인덱스로 요소 출력 =====
        System.out.println("========배열 인덱스로 출력========");
        System.out.println(x[0]);
        System.out.println(x[1]);
        System.out.println(x[2]);

        // ===== for문으로 인덱스 접근 =====
        System.out.println("========for문으로 인덱스 접근========");
        for (int i = 0; i <= 2; i++) {
            System.out.println(x[i]);
        }

        // ===== 배열 길이(length) 활용 =====
        System.out.println(x.length); // 길이 = 3
        for (int i = 0; i < x.length; i++) {
            System.out.println(x[i]);
        }

        // ===== Ex01: 점수 배열 총합, 평균 =====
        int sum = 0;
        int[] jumsu = {77, 89, 92, 40, 97, 68};
        for (int i = 0; i < jumsu.length; i++) {
            System.out.println("점수 목록 : " + jumsu[i]);
            sum += jumsu[i];
        }
        System.out.println("점수 총합 : " + sum);

        double avg = (double) sum / jumsu.length;
        System.out.printf("평균 : %.2f\n", avg);

        // ===== Ex02: 최댓값, 최솟값 =====
        int max = jumsu[0]; // 첫 값으로 초기화
        int min = jumsu[0];

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

        System.out.println("max : " + max);
        System.out.println("min : " + min);
    }
}

 

import java.util.Scanner;

public class Ex02_1차원 {

    public static void main(String[] args) {
        
        // 이름 배열 (미리 초기화)
        String[] name = {"윤아", "아이유", "수지"}; 
        
        // 점수 배열 (크기만 지정)
        int[] score = new int[3];
        
        Scanner input = new Scanner(System.in);
        
        // 점수 입력 받기
        for (int i = 0; i < name.length; i++) {
            System.out.print(name[i] + "의 점수 : ");
            score[i] = input.nextInt();
        }
        
        // 입력받은 점수 출력
        for (int i = 0; i < name.length; i++) {
            System.out.println(name[i] + "의 점수: " + score[i] + "점");
        }
    }
}

 

'기초 및 언어 > ▶ Java&JSP' 카테고리의 다른 글

09. 2차원  (7) 2025.08.14
08. 정렬  (2) 2025.08.14
06. 반복문 while / do while 및 continue, break  (2) 2025.08.14
00. Debug과정  (0) 2025.08.13
05. 반복문 for  (6) 2025.08.13