Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

while 루프 자바

프로그래밍을 하다 보면 여러 번 실행하고 싶은 반복적인 작업이 있는 경우가 종종 있습니다. 루프는 이러한 반복적인 작업을 자동화하고 보다 효율적인 코드를 생성하는 데 사용됩니다.

while 그리고 do...while Java의 루프는 특정 조건이 충족되는 한 코드 블록을 실행하는 데 사용됩니다. 이 루프는 조건부 if와 유사합니다. 특정 조건이 true로 평가되는 경우에만 실행되는 코드 블록인 명령문. if와 달리 그러나 문은 while 조건이 더 이상 참이 아닐 때까지 루프가 실행됩니다.

이 튜토리얼에서는 while 그리고 do...while Java의 명령문을 살펴보고 Java 프로그램에서 이러한 명령문을 보여주기 위해 몇 가지 예를 살펴보겠습니다.

자바 While 루프

while 루프는 지정된 조건이 true로 평가되는 한 코드 블록을 반복합니다. while 구문 루프는 기존의 if와 유사합니다. 성명. 다음은 Java while 구문입니다. 고리:

while (condition_is_met) { // 실행할 코드}

while 루프는 괄호 안의 표현식을 테스트합니다. 부울 표현식이 true로 평가되면 루프 본문이 실행되고 표현식이 다시 평가됩니다. 프로그램은 표현식이 false로 평가될 때까지 이 프로세스를 계속하고 그 후에 while 루프가 중지되고 프로그램의 나머지 부분이 실행됩니다.

while 루프는 Java에서 사용할 수 있습니다. 우리가 목수이고 우리 가게에서 새 테이블 판매를 시작하기로 결정했다고 가정해 보겠습니다. 테이블을 다섯 개만 만들 수 있는 능력이 있고 그 이후에는 테이블을 원하는 사람들이 대기자 명단에 올라갑니다.

우리는 대기자 명단에 올리기 전에 얼마나 많은 사람들이 테이블을 주문할 수 있는지 알려주는 프로그램을 만들고 싶습니다. while를 사용하여 그렇게 할 수 있습니다. 다음과 같은 루프는 주문 수가 제한보다 작지 않을 때까지 루프 본문을 실행합니다.

int limit =5;int orders_made =0;while (orders_made  

코드 반환:

참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.

부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.

테이블 4개 추가 주문 가능.테이블 3개 추가 주문 가능.테이블 2개 추가 주문 가능.테이블 1개 추가 주문.테이블 0개 추가 주문 가능.

코드를 분해해 보겠습니다. 첫 번째 줄에서 limit라는 변수를 선언합니다. 그것은 우리가 만들 수 있는 최대 테이블 수를 추적합니다. 그런 다음 orders_made라는 변수를 선언합니다. 주문한 수를 저장합니다.

그런 다음 우리 프로그램은 while를 실행합니다. orders_made 동안 실행되는 루프 limit보다 작습니다. . 그런 다음 orders_made++를 사용합니다. orders_made에 1을 추가하는 증가 연산자 .

증가 연산자가 실행된 후 프로그램은 "orders_made를 빼서 테이블의 남은 용량을 계산합니다. limit에서 . 그런 다음 [capacity] more tables can be ordered. 메시지를 출력합니다. 콘솔에.

orders_made 때 "while" 문 실행이 중지됩니다. limit보다 큽니다. .

자바 Do While 루프

do…while 루프는 while 유형입니다. 고리. do...while 루프는 do의 코드 블록을 실행합니다. 조건이 true로 평가되는지 확인하기 전에 한 번 차단합니다. 그런 다음 프로그램은 조건이 참인 동안 루프를 반복합니다.

while의 차이점 그리고 do...while 루프는 while입니다. 루프는 이전 조건을 평가합니다. while에서 코드 실행 블록, 반면 do...while 루프는 이후 조건을 평가합니다. do의 코드 실행 차단하다.

do…while 루프의 구문은 다음과 같습니다.

do { // 실행할 코드} while (condition_is_met);

do...while 루프가 어떻게 작동하는지 설명하기 위해 예제를 사용하겠습니다.

사용자에게 1에서 10 사이의 숫자를 추측하도록 요청하는 추측 게임을 만들고 있다고 가정해 보겠습니다. 우리는 사용자가 올바른 숫자를 추측했는지 여부를 확인하기 전에 먼저 숫자를 입력하도록 요청받기를 원합니다. 사용자가 잘못된 번호를 입력하면 승격되어 다시 시도해야 합니다. do...while 루프를 사용하여 이 작업을 수행할 수 있습니다.

다음은 사용자에게 숫자를 추측하도록 요청한 다음 do...while 루프를 사용하여 사용자가 올바른 숫자를 추측했는지 평가하는 프로그램의 예입니다.

가져오기 java.util.Scanner;class 추측 게임 { ​​public static void main(String[] args) {int number =8;int 추측 =0;Scanner 입력 =new Scanner(System.in);do {System.out .print("1에서 10 사이의 숫자를 입력하세요:");guess =input.nextInt();} while (숫자 !=추측);System.out.println("맞습니다!"); }}

코드를 실행할 때 먼저 숫자를 추측해야 합니다. , do...while의 조건 앞에 루프가 평가됩니다. 다음은 정확한 숫자를 추측하기 전에 몇 가지 숫자를 추측하려고 할 때 일어나는 일입니다.

1과 10 사이의 숫자를 입력하세요:91과 10 사이의 숫자를 입력하세요:11과 10 사이의 숫자를 입력하세요:41과 10 사이의 숫자를 입력하세요:51과 10 사이의 숫자를 입력하세요:8당신이 맞습니다! 

코드를 분해해 보겠습니다. 먼저 util.Scanner를 가져옵니다. 사용자 입력을 수집하는 데 사용되는 메서드입니다. 그런 다음 GuessingGame이라는 클래스를 정의합니다. 우리 코드가 존재하는 곳.

그런 다음 number라는 두 개의 변수를 정의합니다. 추측할 숫자와 guess라는 이름을 저장합니다. 사용자의 추측을 저장합니다.

그런 다음 Scanner 메서드를 사용하여 사용자 입력을 시작합니다. Enter a number between 1 and 10: 메시지를 출력합니다. 콘솔에 연결한 다음 input.nextInt()를 사용합니다. 사용자가 입력한 번호를 검색하는 메서드입니다.

이 코드가 실행된 후 do...while 루프는 사용자가 추측한 숫자가 사용자가 추측해야 하는 숫자와 같은지 여부를 평가합니다. 사용자가 잘못된 숫자를 추측했다면 do 루프를 다시 실행하십시오. 사용자가 올바른 숫자를 추측했다면 do...while 루프 실행이 중지되고 You’re correct! 메시지가 표시됩니다. 콘솔에 인쇄됩니다.

무한 루프

무한 루프는 영원히 계속 실행되는 루프입니다. while이 있는 경우 문이 거짓으로 평가되지 않는 루프의 경우 루프가 계속 진행되고 프로그램이 충돌할 수 있습니다. 따라서 어떤 시점에서 while 루프가 실행을 중지하는지 확인하는 것이 중요합니다.

다음은 Java의 무한 루프의 예입니다.

while (true) { // 실행할 코드}

이 루프는 무한히 실행됩니다. 그러나 break를 사용하여 프로그램을 중지할 수 있습니다. 성명. 재고가 있는 테이블의 수를 추적하는 프로그램을 만들고 있다고 가정해 보겠습니다. 재고가 5개뿐입니다. 재고가 없는 테이블이 없으면 while이 필요합니다. 루프를 중지합니다. 다음 코드를 사용하여 이러한 사양을 충족하는 프로그램을 만들 수 있습니다.

부울 table_in_stock =true;int orders_made =0;while (tables_in_stock) { orders_made++; if (orders_made ==5) { System.out.println("품절되었습니다."); 부서지다; } else { int table_left =5 - 주문 제작; String message ="재고가 " + table_left + " 테이블이 있습니다."; System.out.println(메시지); }}

코드를 실행하면 다음 응답이 반환됩니다.

테이블이 4개 있습니다.재고가 3개 있습니다.테이블이 2개 있습니다.테이블이 1개 있습니다.재고가 없습니다.

이 예에서 while 루프는 tables_in_stock 동안 계속 실행됩니다. 사실이다. 그러나 tables_in_stock 거짓이 될 수 있습니다.

따라서 우리 코드에서는 break를 사용합니다. orders_made일 때 실행되는 문 는 5와 같습니다.

즉, 주문이 5개 미만인 경우 There are [tables_left] tables in stock.라는 메시지가 인쇄됩니다. 그러나 orders_made We are out of stock.라는 메시지인 5와 같습니다. 콘솔에 인쇄되고 break 문이 실행됩니다. break 문이 실행되면 while 문이 중지됩니다.



결론

while 루프는 Java에서 사용되는 명령문이 참일 때 특정 코드 블록을 실행하고 명령문이 거짓일 때 중지합니다. do...while 루프는 먼저 코드 블록을 실행한 다음 명령문을 평가하여 루프가 계속 진행되어야 하는지 확인합니다.

이 튜토리얼에서는 while 그리고 do...while 자바에서 루프. 우리는 또한 무한 루프에 대해 이야기하고 Java 프로그램에서 이러한 각 방법의 예를 살펴보았습니다. 이제 Java while 작성에 필요한 지식을 갖추었습니다. 그리고 do...while 전문가와 같은 루프!