ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [4주차]제어문
    스터디/[whiteship]JAVA 2021. 1. 26. 14:11

    목표

    자바가 제공하는 제어문을 학습하세요.


    학습할 것 (필수)

    선택문
    반복문


    과제 (옵션)

    과제 0. JUnit 5 학습하세요.

    • 인텔리J, 이클립스, VS Code에서 JUnit 5로 테스트 코드 작성하는 방법에 익숙해 질 것.
    • 이미 JUnit 알고 계신분들은 다른 것 아무거나!
    • 더 자바, 테스트 강의도 있으니 참고하세요~

    2021/01/27 - [테스트/Junit5] - Junit에 대해서

     

    Junit에 대해서

    공식 레퍼런스를 보고싶으신 분들은 여기로 >> junit.org/junit5/docs/current/user-guide/ JUnit5란? 1. 단위 테스트를 사용하는 자바 개발자가 사용하는 테스팅 프레임워크이다. (+)단위 테스트란? 모듈이나

    jjunbbang.tistory.com

    과제 1. live-study 대시 보드를 만드는 코드를 작성하세요.

    • 깃헙 이슈 1번부터 18번까지 댓글을 순회하며 댓글을 남긴 사용자를 체크 할 것.
    • 참여율을 계산하세요. 총 18회에 중에 몇 %를 참여했는지 소숫점 두자리가지 보여줄 것.
    • Github 자바 라이브러리를 사용하면 편리합니다.
    • 깃헙 API를 익명으로 호출하는데 제한이 있기 때문에 본인의 깃헙 프로젝트에 이슈를 만들고 테스트를 하시면 더 자주 테스트할 수 있습니다.

    2021/02/09 - [프로젝트] - GitHub API로 스터디 참석률을 구하는 프로그램 만들기

     

    GitHub API로 스터디 참석률을 구하는 프로그램 만들기

    whitdship study 4주차에 참가하면서 Github API를 사용해 스터디 참여율을 계산하는 과제를 진행했다. GitHub API를 사용하면서 최대한 Javadoc 그리고 Github 공식문서만 참고하여 개발하고자 노력했다. 이

    jjunbbang.tistory.com


    과제 2. LinkedList를 구현하세요.

    • LinkedList에 대해 공부하세요.
    • 정수를 저장하는 ListNode 클래스를 구현하세요.
    • ListNode add(ListNode head, ListNode nodeToAdd, int position)를 구현하세요.
    • ListNode remove(ListNode head, int positionToRemove)를 구현하세요.
    • boolean contains(ListNode head, ListNode nodeTocheck)를 구현하세요.
    • 구현 -> jjunbbang.tistory.com/46

    과제 3. Stack을 구현하세요.

    • int 배열을 사용해서 정수를 저장하는 Stack을 구현하세요.
    • void push(int data)를 구현하세요.
    • int pop()을 구현하세요.

    과제 4. 앞서 만든 ListNode를 사용해서 Stack을 구현하세요.

    • ListNode head를 가지고 있는 ListNodeStack 클래스를 구현하세요.
    • void push(int data)를 구현하세요.
    • int pop()을 구현하세요.

    과제 5. Queue를 구현하세요.

    • 배열을 사용해서 한번
    • ListNode를 사용해서 한번.

    모든 프로그램언어에 공통적으로 if문과 switch문을 활용해 선택문 즉 조건문을 작성하거나, for 혹은 while 및 do-while을 통한 반복문이 존재합니다. 이 글에선 Java기준에서의 선택문과 반복문의 작성 방법과 예시를 코드로 설명하고자 합니다.

    선택문

    1. IF문

    조건식이 참이면 해당 IF문 내 블록(처리할 구문)을 실행한다. 예시는 다음과 같다.

    public class Bstudy {
        public static void main(String[] args) {
            int Even_Num = 20;
            int Odd_Num = 21;
            if (Even_Num % 2 == 0) {
                System.out.println("Num은 짝수입니다.");
            }if(Odd_Num%3==0){
                System.out.println("Odd_Num은 홀수입니다.");
            }
        }
    }

    [출력]

    Num은 짝수입니다.
    Odd_Num은 홀수입니다.

    if문은 해당 조건이 만족하면 블록내 구문(실행할 코드)들을 실행한다.


    2.ELSE IF문

    해당 조건문은 IF문이 조건이 참이면 해당 조건문을 실행하고, 조건이 참이 아니면 다음 조건문(ElSE IF)이 참인지 확인 후 실행한다.

    IF조건문과 

    public class Bstudy {
        public static void main(String[] args) {
            int Even_Num = 21;
            if (Even_Num % 2 == 0) {
                System.out.println("Num은 짝수입니다.");
            }else if(Even_Num%3==0){
                System.out.println("Odd_Num은 홀수입니다.");
            }
        }
    }
    

    [출력]

    Odd_Num은 홀수입니다.

     

    3.IF, ELSE-IF, ELSE문

    package ThirdWeekOfJanuary;
    
    public class Bstudy {
        public static void main(String[] args) {
            int Even_Num = 23;
            if (Even_Num % 2 == 0) {
                System.out.println("Num은 짝수입니다.");
            } else if (Even_Num % 3 == 0) {
                System.out.println("Odd_Num은 홀수입니다.");
            } else {
                System.out.println("둘 다 아닙니다");
    
            }
        }
    }
    

    [출력]

    둘 다 아닙니다

     

    else구문의 경우 먼저 선언한 조건들이 전부 만족하지 않았을 때 실행한다.

     

    4.switch문

    이 주제는 3주차때 포스팅 했습니다. 참고해주세요

    2021/01/23 - [스터디/[whiteship]JAVA] - [3주차]자바가 제공하는 다양한 연산자

     

    반복문

    자바에서 반복문은 For문, While, Do_ while문이 존재합니다. 또한 조건식과 같이 사용해서 해당 조건이면 다음 반복문으로 이동하는 continue문과 특정 조건일때 반환하는 return문 등 다양한 방법과 함께 쓰입니다.

    구구단을 출력하는 예제로 반복문 예제 코드를 작성한 것을 실습해보겠습니다.

    1. For

    package ThirdWeekOfJanuary;
    
    public class Bstudy {
        public static void main(String[] args) {
            for(int i=2; i<10; i++){
                for(int j=1; j<10; j++ ){
                    System.out.println(i+"*"+j+"= "+i*j);
                }
            }
        }
    }
    

    [출력]

    2*1= 2
    2*2= 4
    2*3= 6
    2*4= 8
    2*5= 10
    2*6= 12
    2*7= 14
    2*8= 16
    2*9= 18

    .

    .

    .

    9*9= 81

     

    2.while문

    package ThirdWeekOfJanuary;
    
    public class Bstudy {
        public static void main(String[] args) {
            int i=2;
            while(i<10){
                int j=1;
                while(j<10){
                    System.out.println(i+"*"+j+"="+i*j);
                    j++;
                }
                i++;
            }
        }
    }
    

    출력은 동일합니다.

    while은 for문과 달리 조건식에 사용되는 변수의 증감값을 블록 내부에서 조작한다는 차이점이 있습니다.

    for문과 while문의 공통점은 조건식을 활용한다는 점이 있습니다. 하지만 이런 반복문을 사용할 때에는 반드시 무한루프에 빠지는 경우가 없는지 확인을 철저히 해야 한다는 점이 존재합니다.

     

    3.do while문

    while문과 동일하지만, 맨 처음 반복문이 시작할 때, 조건식의 참과 거짓 여부 없이 최소 1회 이상을 반복한다는 차이가 있습니다.

    public class Bstudy {
        public static void main(String[] args) {
            char i = 'a';
            do{
                System.out.print(i);
                i = (char)(i+1);
            }while(i<='z');
        }
    }

    [출력]

    abcdefghijklmnopqrstuvwxyz

     

    ※for문의 경우 반복의 횟수, 그리고 범위가 명확한 경우에 사용하며, 반복 횟수를 처음부터 알 수 없을 경우엔 while, do-while문을 사용한다는 것을 기억해야 합니다.


     

     

    '스터디 > [whiteship]JAVA' 카테고리의 다른 글

    [6주차]상속  (0) 2021.02.15
    [5주차]클래스  (0) 2021.02.12
    [3주차]자바가 제공하는 다양한 연산자  (0) 2021.01.23
    [2주차]자바 데이터 타입, 변수 그리고 배열  (0) 2021.01.12
    [8주차]인터페이스  (0) 2021.01.06
Designed by Tistory.