JAVA 배열과 제어문(반복문) 정리

2024. 10. 10. 11:05·🗄️ Backend/Java

1. 배열(Array)이란?

배열은 같은 데이터 타입의 여러 값을 한 번에 저장하고 관리할 수 있는 자료 구조입니다. 배열을 사용하면 여러 변수를 따로 선언하지 않아도 하나의 변수로 여러 데이터를 처리할 수 있어 코드가 간결해집니다.

배열의 특징

  • 동일한 데이터 타입만 저장 가능 (Homogeneous Collection)
  • 배열의 크기는 고정적이며, 한 번 생성되면 변경할 수 없습니다.
  • 배열은 0번 인덱스부터 시작합니다.
  • 배열의 길이는 배열명.length로 확인할 수 있습니다.

배열의 구조

  1. 배열 선언:위 코드는 정수형(int) 데이터를 담을 배열 a를 선언합니다.
  2. int[] a; // 또는 int a[];
  3. 배열 생성:배열 a를 크기 4로 생성하여, 4개의 정수를 저장할 수 있습니다.
  4. a = new int[4];
  5. 배열 초기화:
    배열에 값을 넣는 과정입니다. 배열의 인덱스에 값을 할당하여 초기화합니다.
  6. a[0] = 1; a[1] = 2; a[2] = 3; a[3] = 4;

배열 선언, 생성, 초기화를 동시에 하는 방법

int[] b = {10, 20, 30, 40};  // 배열 선언과 동시에 생성 및 초기화

2. 자바 배열 사용법

배열의 선언, 생성, 초기화 예시

public class ArrayEx {
    public static void main(String[] args) {
        // 배열 선언
        int[] arr;

        // 배열 생성
        arr = new int[5];

        // 배열 초기화
        arr[0] = 10;
        arr[1] = 20;
        arr[2] = 30;
        arr[3] = 40;
        arr[4] = 50;

        // 배열 사용
        System.out.println("첫 번째 값: " + arr[0]);

        // 배열 값 변경
        arr[0] = 100;
        System.out.println("변경된 첫 번째 값: " + arr[0]);

        // 배열 출력
        System.out.println(java.util.Arrays.toString(arr));

        // 배열의 길이 출력
        System.out.println("배열의 길이: " + arr.length);

        // 배열의 마지막 값 출력
        System.out.println("배열의 마지막 값: " + arr[arr.length - 1]);
    }
}

위 코드는 배열 선언, 생성, 초기화, 그리고 배열 값의 변경 및 출력 방법을 보여줍니다.

배열의 합계와 평균 구하기

배열의 값들을 더하거나 평균을 구할 수 있습니다.

int[] arr = {1, 2, 3, 4, 5};
int sum = 0;

for (int i = 0; i < arr.length; i++) {
    sum += arr[i];
}

System.out.println("합계: " + sum);
System.out.println("평균: " + (double)sum / arr.length);

3. 자바 제어문

제어문은 조건에 따라 프로그램의 흐름을 제어하거나, 반복해서 실행되는 문장을 작성할 때 사용됩니다. 자바의 제어문은 크게 조건문, 반복문, 탈출문으로 나뉩니다.

조건문 - if, if ~ else, else if

if문은 조건에 따라 다른 코드 블록을 실행할 수 있게 해줍니다.

기본 형태

int num = 10;
if (num > 0) {
    System.out.println("양수입니다.");
} else if (num < 0) {
    System.out.println("음수입니다.");
} else {
    System.out.println("0입니다.");
}

중첩된 if문과 else if문

여러 조건을 나열할 수 있으며, 조건을 만족하는 블록이 하나라도 실행되면 나머지 조건은 무시됩니다.

int score = 85;
if (score >= 90) {
    System.out.println("A 학점");
} else if (score >= 80) {
    System.out.println("B 학점");
} else {
    System.out.println("C 학점");
}

반복문 - for, while, do-while

반복문은 코드를 여러 번 실행할 때 사용됩니다.

for문

for (int i = 0; i < 5; i++) {
    System.out.println("반복문 실행: " + i);
}

while문

int i = 0;
while (i < 5) {
    System.out.println("while 반복문 실행: " + i);
    i++;
}

do-while문

조건에 상관없이 최소 한 번은 실행됩니다.

int i = 0;
do {
    System.out.println("do-while 실행: " + i);
    i++;
} while (i < 5);

향상된 for문

자바의 향상된 for문은 배열이나 리스트 등 컬렉션을 순회할 때 유용합니다.

int[] arr = {1, 2, 3, 4, 5};
for (int num : arr) {
    System.out.println(num);
}

탈출문 - break, continue

  • break: 반복문을 즉시 종료시킵니다.
  • continue: 반복문의 나머지 부분을 건너뛰고 다음 반복을 실행합니다.
for (int i = 0; i < 5; i++) {
    if (i == 3) {
        break;  // 3에서 반복문을 종료
    }
    System.out.println(i);
}

for (int i = 0; i < 5; i++) {
    if (i == 3) {
        continue;  // 3은 건너뛰고 다음 반복 실행
    }
    System.out.println(i);
}

4. switch 문

switch 문은 값에 따라 여러 경우 중 하나를 선택하여 실행할 때 사용됩니다.

switch 문 기본 형태

int day = 3;
switch (day) {
    case 1:
        System.out.println("월요일");
        break;
    case 2:
        System.out.println("화요일");
        break;
    case 3:
        System.out.println("수요일");
        break;
    default:
        System.out.println("주말");
        break;
}

문자열을 사용하는 switch

String fruit = "사과";
switch (fruit) {
    case "사과":
        System.out.println("사과의 가격은 3만원입니다.");
        break;
    case "수박":
        System.out.println("수박의 가격은 4만원입니다.");
        break;
    default:
        System.out.println("해당 과일은 없습니다.");
        break;
}

마무리

자바의 배열과 제어문을 이해하면 프로그램의 흐름을 제어하고 데이터를 관리하는 데 매우 유용합니다. 배열은 데이터를 효율적으로 저장하고 관리할 수 있으며, 제어문은 프로그램의 동작을 유연하게 제어할 수 있습니다. 이를 통해 효율적인 코드를 작성할 수 있습니다.

'🗄️ Backend > Java' 카테고리의 다른 글

JAVA 예외 처리(Exception Handling)와 가비지 컬렉션 (Garbage Collection)  (1) 2024.10.10
JAVA 패키지와 객체지향 개념 정리  (0) 2024.10.10
JAVA 메서드와 객체지향 프로그래밍  (0) 2024.10.10
JAVA 연산자 총정리: 개념부터 예제까지!  (3) 2024.10.10
JAVA 변수와 데이터 타입: 개념부터 실습까지  (0) 2024.10.10
'🗄️ Backend/Java' 카테고리의 다른 글
  • JAVA 패키지와 객체지향 개념 정리
  • JAVA 메서드와 객체지향 프로그래밍
  • JAVA 연산자 총정리: 개념부터 예제까지!
  • JAVA 변수와 데이터 타입: 개념부터 실습까지
hjwjo
hjwjo
백엔드 및 풀스택 개발에 관심 있는 초보 개발자의 개발 블로그입니다.
  • hjwjo
    Jeongwoo's Devlog
    hjwjo
  • 전체
    오늘
    어제
    • Devlog
      • 🗄️ Backend
        • Java
        • Spring
        • JPA
        • SQL
        • JSP
        • AWS
        • GCP
        • Linux
        • GitHub
        • ML
        • Security
      • 🖥️ Frontend
        • React
        • CSS
      • 🏅 Project
        • Hackathon
        • Team Project
      • 📊 Algorithm
        • BOJ
      • 📜 Certs
        • ADsP
        • SQLD
        • 정보처리기사
      • 📖
        • JavaScript
      • 일상
        • 면접후기
  • 블로그 메뉴

    • 홈
    • Devlog
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    java
    GCP
    자바
    springboot
    스프링부트
    AWS
    정보처리기사
    jsp
    정처기
    SQL
    java기초
    백준
    스프링
    DML
    쿼리
    데이터베이스
    Spring
    http
    백엔드
    ADsP
  • 최근 댓글

  • 최근 글

hjwjo
JAVA 배열과 제어문(반복문) 정리
상단으로

티스토리툴바