* *while문

 [초기식;]
     while(조건식){ // 반복을 수행시킬 조건만을 작성
        반복적으로 실행할 코드 ;
        [증감식];
      }
      
     

1. for문을 while문으로 바꾸기 

1) 안녕하세요 5번 반복출력 

 public void method1() {
         //for문 사용시 
        for(int i=1; i<=5;i++) {
            System.out.println("안녕하세요");
        }
        //while문 사용 
        int i = 0;
        while(i <5) {
            System.out.println("안녕하세요");
            i++;
        }
        System.out.println(i); //5
    }

2)  1 2 3 4 5 형식으로 숫자 출력하기 

   public void method2() {
       //for문 
        for(int i=1;i<6;i++) {
            System.out.print(i+ " ");
        }
        System.out.println();
       //while문 
        int i= 1;
        while(i<6) {
            //System.out.print( i + " ");
            //i++;
            System.out.print( i++ + " ");
        }
 

2. while문 예시

1) 1 부터 10까지 홀수 출력 

  public void method3() {
        int i = 1;
        while(i<11) {
            if(i % 2 == 1) {
                System.out.print(i + " ");
            }
            i++;
        }
     }

2) 1부터 랜덤값(1~100) 까지의 총합계  

public void method4() {
       
        int random2 = (int)(Math.random()*100 + 1);
       
        int sum2 = 0;
        int i2 = 1;
       
        while(i2<=random2) {
            sum2 += i2; // sum2 += i++
            i2++;
        }
        System.out.println("1에서부터 "+ random2 +"까지의 총 합 : "+ sum2);
    }
   

3) 문자열을 입력받아 각 인덱스에 담긴 문자 출력 

public void method5() {
        Scanner sc = new Scanner(System.in);
        System.out.print("문자열 입력 : ");
        String str = sc.nextLine();
       
        int i = 0;
        while(i<str.length()) {
            System.out.println(str.charAt(i++));
        }
    }
 

3. while문 무한 반복문 

- 프로그램을 종료할때까지 메뉴를 무한반복하여 출력하기 

public void method6() {
        Scanner sc = new Scanner(System.in);
        while(true) {
            // 메뉴 출력
            System.out.println("\n======메뉴=======");
            System.out.println("1. 안녕하세요 5번 출력");
            System.out.println("2. 1부터 5까지 출력");
            System.out.println("3. 1부터 10까지의 홀수 출력");
            System.out.println("4. 1부터 랜덤값까지 총 합계 출력");
            System.out.println("5. 문자열의 각 문자 출력");
            System.out.println("0. 프로그램 종료");
            System.out.print("메뉴 입력 > ");
            int menu =sc.nextInt();
                   
            switch(menu) {
            case 1 : method1(); break;
            case 2 : method2(); break;
            case 3 : method3(); break;
            case 4 : method4(); break;
            case 5 : method5(); break;
            case 0 : System.out.println("프로그램을 종료합니다. 이용해 주셔서 감사합니다."); return;
            default : System.out.println("잘못 입력하셨습니다. 메뉴를 다시 입력해주세요.");
            }
        }
    }
       

         ** do - while문

     [표현법]
do{
    반복적으로 실행할 코드 ;
   }while(조건식);
   }
     *처음에 조건 검사 없이 무조건 한번은 실행 
       =>조건검사 --> true일 경우 실행
                                  ---------반복---------
      =>조건검사 --> false일 경우 실행x => 반복문 종료  

 

   1. do- while문 예시

1) 1부터 사용자가 입력한 수까지의 총합계

  public void method8() {
       
        Scanner sc = new Scanner(System.in);
        System.out.print("정수 : ");
        int num = sc.nextInt();
       
        int i = 1;
        int sum = 0;
       
        do {
            sum += i++;
        }while(i <= num);

  		System.out.println("총 합계 : "+ sum);
    }
    
2) 매번 반복적으로 사용자에게 문자열을 입력받고 해당 문자열의 길이 출력  
     단, 사용자가 입력한 문자열이 "exit"일 경우 반복문 종료
       
 public void method9() {
      
            Scanner sc = new Scanner(System.in);
           
            String str = "";
            do {
            System.out.print("문자열 입력(exit입력시 종료) : ");
            str = sc.nextLine();
            ///xxx의 글자수는 xx글자입니다.
            System.out.println(str + "글자 수는 " + str.length() + "글자 입니다.");
            }while(!str.equals("exit"));
    }
}

 

'JAVA' 카테고리의 다른 글

4_5. 제어문_ 분기문 continue  (0) 2022.10.21
4_5. 제어문_ 분기문 break  (0) 2022.10.21
4_3 제어문 _반복문 for문  (0) 2022.10.20
4_2. 제어문 _ 조건문 switch  (0) 2022.10.18
4_1. 제어문(Control) _ 조건문 if  (0) 2022.10.18
복사했습니다!