Java 제어문 & 반복문

2023. 3. 31. 13:29·📘 Backend/Java

📘 조건문

  • 소괄호 안에는 조건식을 넣어준다.
  • 조건식이 참일때 실행하고자 하는 코드 작성

기본 형식

if (조건식) {}
 code; // 조건식이 참이면 실행
}

if else 문

  • 조건식의 결과에 따라 실행블록 선택
  • if의 조건식이 true면 해당 블록이 실행되고, false면 else if 조건식 검사하고 false면 else 실행

img


Switch 문

입력변수의 값과 일치하는 case 입력값(입력값1, 입력값2, ...)이 있다면,
해당 case문에 속한 문장들이 실행된다.


case문마다 break 라는 문장이 있는데 해당 case문을 실행 한 뒤 switch문을 빠져나가기 위한 것이다.

만약 break 문이 빠져 있다면 그 다음의 case 문이 실행된다.

switch(입력변수) {
    case 입력값1: ...
         break;
    case 입력값2: ...
         break;
    ...
    default: ...
         break;
}

📘 For & For Each

for문은 조건식이 참인동안 괄호 안의 문장들을 반복하다 거짓이 되면 반복문을 벗어난다.


처음엔 초기값(변수에 최초의 값을 저장)을 실행하며,
조건식에 참일 동안 괄호 안에 문장을 반복 실행한다.


for 문

조건식을 충족하는 동안 초기화식부터 시작해서 증감식의 규칙을 따라서 실행

img


For Each

세미콜론(;)이 아닌 콜론(:)으로 구분한다.

변수명 : 배열명으로 선언한 뒤, 변수명을 출력하면 해당 인덱스대로 배열원소값이 출력된다. 확

장 for문은 일반적인 for문과 달리 배열과 컬렉션에 저장된 요소들을 읽어오는 용도로만 사용할 수 있다.

img


출력값

kimcoding 님은 자바를 공부중입니다.

javalee 님은 자바를 공부중입니다.

ingikum 님은 자바를 공부중입니다.


위와 같이 for문의 괄호( ()) 안에는 배열에서 꺼낸 항목을 저장할 변수 선언, 콜론( : )
그리고 사용할 배열이 작성됩니다.


향상된 for문을 처음 실행 할 때, names 배열에서 가져올 첫번째 값이 존재하는지 확인 하고,
값이 존재하면 해당값을 변수인 name에 저장합니다.


그리고 그 안의 실행문을 실행합니다.

블록 내부의 실행문이 모두 실행 되면 다시 names 배열에서 가져올 값이 있는지
확인 하고 만약 가져올 다음 항목이 없다면 자동적으로 for문이 종료됩니다.


📘 While

  • 조건식이 true일 경우 계속 반복
  • 초기화,증감식은 필요없다면 생략가능

기본형식

num이 11이 되는순간 반복 종료

img


밖에서 boolean 변수값을 정하고 if로 탈출조건문 작성

img


do while 문

  • 조건식에 의해 반복 실행하는건 while과 똑같음
  • while문은 시작 할 때부터 조건식을 검사하여 블록 내부를 실행할지 결정
  • 경우에 따라서는 블록 내부의 실행문을 우선 실행시키고 실행 결과에 따라서
    반복 실행을 계속 할지 결정하는 경우 있음

기본 형식

do {
 (1)실행문 // 처음한번은 무조건 실행
} while ((2)조건식);

do-while문이 처음 실행될 때

(1)실행문을 먼저 실행.

(1)실행문이 모두 실행되면

(2)조건식을 평가.

그리고 그 결과가 true이면 (1)실행문 → (2)조건식으로 반복 실행을 하고, false이면 do-while문을 종료.


1~10 사이의 정수를 변수  randomNum 에 저장하고 이 값을 맞출 때까지 반복하는  do-while 문.

img


📘 break

  • 반복문인 for문, while문, do-while문을 실행 중지할 때 사용. switch문도 break문을 사용하여 switch문을 종료
  • break문은 대개 if문과 같이 사용되며, if문의 조건식에 따라 for / while문을 종료 할 때 사용

i 의 값이 5가 되면 바깥 for 문까지 빠져나올 수 있도록 해당 for 문에 Outer 라는 라벨을 붙이고,
이를 break 문에 사용

img


📘 continue

  • 반복문인 for,while,do-while 에서만 사용
  • 블록 내부에서 continue문이 실행되면 for문의 증감문 혹은 while,do-while문의 조건식으로 이동하여 작동
  • continue ,break 의 차이점은 반복문 종료여부임. continue는 반복종료X 다음차례로 넘어가 계속 반복
  • 보통 if에 사용하며 if의 조건은 만족하면 continue를 통해 다음 반복으로 넘어감

1 ~10까지의 수 중에서 홀수만 출력하는 코드  /  if문을 사용하여,
짝수인 경우는 다시 for 문의 증감문으로 이동하여 다음 반복을 실행하고, 홀수만 출력

img

저작자표시 (새창열림)

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

Java Class 구조  (0) 2023.03.31
Java Array  (0) 2023.03.31
Java Operator & I/O  (0) 2023.03.31
Java Final  (0) 2023.03.31
Java String Class  (0) 2023.03.31
'📘 Backend/Java' 카테고리의 다른 글
  • Java Class 구조
  • Java Array
  • Java Operator & I/O
  • Java Final
신건우
신건우
조용한 개발자
  • 신건우
    우주먼지
    신건우
  • 전체
    오늘
    어제
    • 분류 전체보기 (422)
      • 📘 Frontend (71)
        • Markup (1)
        • Style Sheet (2)
        • Dart (8)
        • Javascript (12)
        • TypeScript (1)
        • Vue (36)
        • React (2)
        • Flutter (9)
      • 📘 Backend (143)
        • Java (34)
        • Concurrency (19)
        • Reflection (1)
        • Kotlin (29)
        • Python (1)
        • Spring (42)
        • Spring Cloud (5)
        • Message Broker (5)
        • Streaming (2)
        • 기능 개발 (5)
      • 💻 Server (6)
        • Linux (6)
      • ❌ Error Handling (11)
      • 📦 Database (62)
        • SQL (31)
        • NoSQL (2)
        • JPQL (9)
        • QueryDSL (12)
        • Basic (4)
        • Firebase (4)
      • ⚙️ Ops (57)
        • CS (6)
        • AWS (9)
        • Docker (8)
        • Kubernetes (13)
        • MSA (1)
        • CI & CD (20)
      • 📚 Data Architect (48)
        • Data Structure (10)
        • Algorithm (8)
        • Programmers (17)
        • BaekJoon (5)
        • CodeUp (4)
        • Design Pattern (4)
        • AI (0)
      • ⚒️ Management & Tool (8)
        • Git (7)
        • IntelliJ (1)
      • 📄 Document (10)
        • Project 설계 (6)
        • Server Migration (3)
      • 📄 책읽기 (2)
        • 시작하세요! 도커 & 쿠버네티스 (2)
      • 🎮 Game (4)
        • Stardew Vally (1)
        • Path of Exile (3)
  • 블로그 메뉴

    • 링크

      • Github
    • 공지사항

    • 인기 글

    • 태그

      Lock #Thread #Concurrency
      GStreamer #Pipeline
      React #Markdown
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.0
    신건우
    Java 제어문 & 반복문
    상단으로

    티스토리툴바