멋사 Backend 10일차 🦁

신재원·2023년 4월 28일

🐯 Java

🐹 제어문

✔ 제어문 이란?

프로그램의 수행 순서에 대해 조건 / 반복을 통해 제어할수있는 실행문 입니다.

  • 제어문에는 조건문과 반복문이 있습니다.

여기서 문 (statement) 란?

  • 코드를 구성하는 하나하나의 문장이라고 생각하면 될것같습니다.
    • 프로그램 실행의 흐름(flow)을 제어하는 역할을 합니다.
    • if 문, for문, while문, try - catch문
public class Main {
    public static void main(String[] args) {
        // 하나의 문 입니다.
        if () {

        } else {
        }
        // 하나의 문 입니다.
        while () {

        }
    }
}

🐱‍🏍 조건문

if 조건문

  • 조건식에 따라 { } 안에 있는 구문이 실행여부를 판별합니다.
public class Main {
    public static void main(String[] args) {

        if (조건식) {

        }
        int number1 = 10;
        int number2 = 20;
        
        // 조건식이 true 임으로 { } 구문이 실행됩니다.
        if (number1 < number2) {
            System.out.println("number2가 number1보다 큽니다");
        }
    }
}

if else 조건문

  • if 조건문true일경우 if 조건문{ } 구문이 실행되고,false 일경우 else { } 구문이 실행됩니다.
public class Main {
    public static void main(String[] args) {

        if (조건식) {

        } else {

        }

        int number1 = 10;
        int number2 = 20;

        // if 조건문이 flase 임으로 if 조건문이 아닌 else 구문이 실행됩니다.
        if (number1 > number2) {
            System.out.println("number2가 number1보다 큽니다");
        } else {
            System.out.println("number1이 number2보다 크지 않습니다");
        }
    }
}

if else if 조건문

  • if 조건문false 일 경우 다음 조건이 있는 else if 조건문 의 로직을 타게되며 else if 조건문false 경우 else 로직을 타게되어 else 로직을 출력합니다.
int score = 70;
        if (score >= 70) {
            System.out.println("C"); // C 출력
        }
        if (score >= 60) {
            System.out.println("D"); // D 출력
        }

여기서 의문이 생길것입니다. 위의 코드처럼 if 문을 2개 사용하면 안되는 것인가?
{ } 의 구문을 2번 타게되서, C 출력, D 출력을 하게됩니다.
else if는 조건식에 해당되면 구문을 탈출한다고 생각하면 될것 같습니다.

public class Main {
    public static void main(String[] args) {

        if (조건식) {

        } else if (조건식) {

        } else {

        }

        int score = 80;

        if (score >= 90) {
            System.out.println("A");
        } else if (score >= 80) {
            System.out.println("B");
        } else if (score >= 70) {
            System.out.println("C");
        }else{
            System.out.println("등록되지 않은 학점입니다.");
        }
    }
}

📌 else if 주의점

  • else if 값 크기를 작은걸로 먼저지정하게되면 해당 줄에 else if 문을 타게됩니다.
    그래서 아래의 코드처럼 원했던 B 가 출력되는것이 아닌 C 가 출력됩니다.
     int score = 80;

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

🐱‍🚀 switch 문

public class Main {
    public static void main(String[] args) {

        String season = "3";

        switch (season) {
            case "12", "1", "2":
                System.out.println("겨울");
                break;
            case "3", "4", "5":
                System.out.println("봄");
                break;
            case "6", "7", "8":
                System.out.println("여름");
                break;
            case "9", "10", "11":
                System.out.println("가을");
                break;
        }
    }
}
  • break; 를 작성하여 구문을 꼭 탈출해야됩니다.
  • 추후에 Spring에서 Role (권한)을 부여할때 많이 사용합니다.

🐱‍👓 카카오 뱅크 도메인 특강

  • 자기소개서
  1. 얇고 넓게 아는것보다는 깊게 한 두개 아는것이 더 좋다고 생각합니다.
    그렇게 공부를 하였으면, ~을 해봤습니다가 아닌, 체계화된 프로세스를 했다는것을 적어야됩니다.
    왜 ? 그렇게 로직을 짜게 되었으며, 어려운 점이 있었다면 어떻게 해결할려고 하였는지 자기소개서에 녹여서 적어야됩니다.
  2. 당연하게 내가 할수있는것만 작성 (얘기) 해야 되며, 팀 프로젝트를 했다고 해서 내가 다 할수 있는것은 아닐것입니다.
  • 현업
  1. Jira 라는 tool (툴)을 사용해 task (업무) 를 분배합니다.
    ( 포스트잇 처럼 할일을 분배 한다고 생각하면 될것입니다. )
  2. 깃 플로우를 통해 브랜치를 관리 합니다.
  3. 코드 리뷰
  4. 경력 이직이라는 것은 알고리즘 보다는 코드의 퀄리티를 봅니다.
    ( 스타트업 에서 면접 / 업무 를 경험해보는것도 괜찮습니다.)
  • 번외

자기 자신이 무엇이 부족한지 빠르게 파악해야됩니다.
프로젝트가 부족한지 알고리즘이 부족한지 면접이 부족한지 파악하여 그 부분에 대하여 연습과 노력을 해야됩니다.

  • 면접에서는 스피치가 중요하며, '나' 라는 상품을 설명 한다고 생각하셔야됩니다.

0개의 댓글