Welcome to Wesley & Harry's Traveling & Programming

IT Program/Java Basic

자바(java) 반복문 (do-while) & Scanner 예제 & 자바 문자열 받아오기 & 문자열 비교

Wesley & Harry 2022. 3. 1. 23:44
반응형

자바 반복문 do-while 문과 Scanner를 이용한 자바 문자열 받아오기를 알아보겠습니다.

do-while문은 while문과 비슷하지만 

while문은 시작시 조건식을 판단해 블록 내부를 실행할지말지 결정하지만

do while문은 블록 내부의 실행문을 실행시키고 실행 결과에 따라서 반복 실행을 계속할지 결정하는 경우에 사용이 가능하다.

우선 do-while문의 형태를 알아보도록하자.

do {
	실행문
    } while (조건식);

do 에 진입했을시 우선 실행문을 먼저 실행한 후 while의 조건식에서 true와 false를 판별한 후 

true일 경우 실행문을 다시 시작하고 false일 경우 do-while문을 벗어나는 구조를 가지고 있습니다.

 


do-while문의 예제를 시작하기전 사용할 새로운 메소드를 알아보도록 하겠습니다.

Scanner는 앞 게시물과 다르게 문자열을 입력받을 수 있습니다.

아래 코드와 같이 Scanner의 객체를 생성한 후 nextLine메소드를 호출하게 되면 콘솔에 입력된 문자를 받을 수 있게 됩니다. 해당 문자는 inputString에 저장하게됩니다.

Scanner scanner = new Scanner(System.in);
String inputString = scanner.nextLine();

예제를 통해 do-while문과 Scanner의 사용방법을 알아보도록 하겠습니다.

코드를 따라하다보면 이런 에러가 발생할 수 있습니다. 또한 Scanner 클래스를 사용하기위해 import를 해줘야하므로

Scanner를 친 후 Ctrl + Spacebar 를 같이 눌러주면 해당 그림과 같이 뜹니다

java.util을 선택해주면 빨간네모칸에 import java.util.Scanner;가 자동으로 생성이 되는것을 확인하실 수 있습니다.

예제 코드는 아래에 있습니다.

System.out.println("따라할 메세지를 입력하세요");
System.out.println("프로그램을 종료하려면 t를 입력하세요");
Scanner scanner = new Scanner(System.in);
String inputString;
		do {
			System.out.print(">");
			inputString = scanner.nextLine();
			System.out.println(inputString);
		} while( ! inputString.equals("t"));
		System.out.println();
		System.out.println("프로그램종료");

해당 코드에 대한 순서는

System.out.println("따라할 메세지를 입력하세요");
System.out.println("프로그램을 종료하려면 t를 입력하세요");

를 통해 콘솔에 단순 출력을 해준 뒤

Scanner scanner = new Scanner(System.in);

Scanner 객체를 생성해 줍니다.

문자열이 저장될 inputString의 타입을 String으로 해주고

do while문으로 들어가게 됩니다.

> 를 출력해준뒤

inputString = scanner.nextLine(); 를 통해 콘솔에서 문자열을 입력받은뒤 inputString에 저장해줍니다.

그뒤 inputString을 출력해주고

while문의 조건식에 가서 true와 false를 판별합니다.

! inputString.equals("t") 의 의미는

inputString에 있는 문자가 "t"와 같지 않을때 라는 뜻입니다.

"t"가 아닌 문자가 들어올 경우 do{}의 실행문을 계속 반복한뒤 조건문(! inputString.equals("t"))을 판단합니다.

앞서 말했듯이 while에 조건식이 false일 경우 do-while문 종료라 하였으니 "t"가 입력될때가 종료가 되는 때 입니다.

실행결과를 통해 우리의 생각을 정리해보도록 하겠습니다.

 

반응형