본문 바로가기
내일배움캠프(Sparta)/Java Handbook

[Java Handbook] Part 3-1

by mmm- 2023. 9. 12.

1. Flow Chart (순서도, 흐름도)

플로우 차트

: 어떤 일을 처리하는 과정을 순서대로 간단한 기호와 도형으로 도식화한 것
  알고리즘이나 프로그램의 논리 or 흐름을 그림으로 표현하는 방법


플로우 차트 예시


플로우 차트 쉽게 그릴 수 있는 사이트

https://app.diagrams.net/

 

Flowchart Maker & Online Diagram Software

Flowchart Maker and Online Diagram Software draw.io is free online diagram software. You can use it as a flowchart maker, network diagram software, to create UML online, as an ER diagram tool, to design database schema, to build BPMN online, as a circuit d

app.diagrams.net


2. 조건문 (if)

if 문

: 조건문 중 가장 기본이 되는 명령문으로, 조건식의 결과가 참이면 주어진 명령을 실행하고 거짓이면 아무것도 실행하지 않음

public class Control1_1 {
    public static void main(String[] args) {
        char ch = 'b';

        if(ch >= 'a' && ch <= 'z') {
          System.out.println("해당 문자는 영문 소문자입니다.");
        }
    }
}

 

if - else 문

: 주어진 조건식의 결과가 참이면 if 안에 주어진 명령을 실행하고 그 외의 경우는 else 안에 주어진 명령 실행

public class Control1_2 {
    public static void main(String[] args) {
        char ch = 'Z';
        if(ch >= 'a' && ch <= 'z') {
            System.out.println("해당 문자는 영문 소문자입니다.");
        } else {
            System.out.println("해당 문자는 영문 소문자가 아닙니다.");
        }
    }
}

 

if - else if - else 문

  • 여러 개의 조건식을 포함
  • if, else 는 한 번만 사용 가능하고 else if 는 여러 번 사용될 수 있음
  • else 블럭 생략 가능
public class Control1_3 {
    public static void main(String[] args) {
        char ch = 'p';

        if (ch >= 'a' && ch <= 'z') {
            System.out.println("해당 문자는 영문 소문자입니다.");
        } else if (ch >= 'A' && ch <= 'Z') {
            System.out.println("해당 문자는 영문 대문자입니다.");
        } else {
            System.out.println("해당 문자는 영문자가 아닙니다.");
        }

        int score = 70;

        if(score >= 90) {
            System.out.println("A등급입니다.");
        } else if(score >= 80) {
            System.out.println("B등급입니다.");
        } else if(score >= 70) {
            System.out.println("C등급입니다.");
        }
    }
}

 

중첩된 if 문

public class Control1_4 {
    public static void main(String[] args) {
        int score = 87;

        if(score >= 90) {
            if(score >= 95) {
                System.out.println("A++등급입니다.");
            } else {
                System.out.println("A등급입니다.");
            }
        } else if(score >= 80) {
            if(score >= 85) {
                System.out.println("B++등급입니다.");
            } else {
                System.out.println("B등급입니다.");
            }
        } else if(score >= 70) {
            if(score >= 75) {
                System.out.println("C++등급입니다.");
            } else {
                System.out.println("C등급입니다.");
            }
        } else {
            System.out.println("D등급입니다.");
        }
    }
}

3. 조건문 (switch)

switch 문

: 처리해야 하는 경우의 수가 많을 때 유용한 조건문

  • break; 를 작성하지 않으면 switch문 끝까지 실행됨
  • default문은 생략 가능
  • 조건식 결과에 정수나 문자열만 가능. 중복 허용 X (if문은 true/false만 가능)

 

switch문 실행 흐름

  1. 조건식 계산
  2. 조건식의 결과와 일치하는 case문으로 이동
  3. 해당 case문 명령 수행
  4. break;를 만나거나 switch문이 끝나면 switch문 전체를 빠져나감
class Control2_1 {
    public static void main(String[] args) {
        int month = 8;
        String monthString = "";
        switch (month) {
            case 1:  monthString = "January";
                break;
            case 2:  monthString = "February";
                break;
            case 3:  monthString = "March";
                break;
            case 4:  monthString = "April";
                break;
            case 5:  monthString = "May";
                break;
            case 6:  monthString = "June";
                break;
            case 7:  monthString = "July";
                break;
            case 8:  monthString = "August";
                break;
            case 9:  monthString = "September";
                break;
            case 10: monthString = "October";
                break;
            case 11: monthString = "November";
                break;
            case 12: monthString = "December";
                break;
            case 0: case 13:
                System.out.println("이런식으로 case 문을 사용할 수 있습니다.");
                break;
            case 15:
            default: monthString = "Invalid month";
        }
        System.out.println(monthString);
    }
}

'내일배움캠프(Sparta) > Java Handbook' 카테고리의 다른 글

[Java Handbook] Part 4-1  (0) 2023.09.12
[Java Handbook] Part 3-2  (0) 2023.09.12
[Java Handbook] Part 2-2  (0) 2023.09.12
[Java Handbook] Part 2-1  (0) 2023.09.12
[Java Handbook] Part 1-4  (0) 2023.09.11