티스토리 뷰
development/Java
[Java] While문 / 문자열 비교하기 .equals(), 무한 루프 , 탈출 조건, break()
Happyoon ~ 2021. 11. 2. 19:11728x90
반응형
반복문에는 for문 이외에 while문이 있다.
while(조건)에서, 조건이 참일 경우 while문이 실행된다.
예제1 - 무한 루프
MainClass10.java - 탈출 조건이 없고 while(true)이므로 무한루프 실행
package test.main;
public class MainClass10 {
public static void main(String[] args) {
int count = 0;
//무한 루프
while(true) {
count++;
System.out.println(count+"반복중...");
}
}
}
예제2 - 탈출 조건 넣기1
MainClass11.java - count가 100000일 때 while문을 빠져 나오도록 탈출조건 설정
package test.main;
public class MainClass11 {
public static void main(String[] args) {
int count=0;
//외형을 보면 무한 루프이지만
while(true) {
count++;
System.out.println(count+" 번 반복중...");
//탈출 조건이 있다.
if(count == 100000) {
break;//인접한 반복문 블럭 1개 탈출
}
}
System.out.println("main 메소드가 종료 됩니다.");
}
}
count가 99999일 때, count++되어 count는 100000이되고, "100000번 반복중..."이 출력된다.
if문에서 count 가 100000이므로 break문을 통해 while문을 탈출한다.
예제 3 - 탈출 조건 넣기 2
MainClass13.java - count가 100000보다 작을 때만 while문 실행되도록 설정
package test.main;
public class MainClass12 {
public static void main(String[] args) {
int count=0;
while(count<100000) {
count++;
System.out.println(count+"번 반복중...");
}
System.out.println("main 메소드가 종료됩니다.");
}
}
count가 99999이면, count++되어 count가 100000이 되고, 바로 countrk 100000이므로 "100000번 반복중..."이 출력된다.
다음 while문이 실행되면 count가 100000이므로 while문을 탈출하여 "main 메소드가 종료됩니다."를 출력한다.
문자열로 탈출조건 지정하기 - .equals()
q를 입력하면 while문을 탈출하는 예제이다.
지금까지 정수로만 탍출조건을 지정했는데 이번에는 문자열로 탈출조건을 지정하는 예제이다.
자바에서는 문자열이 같은지 비교할 때 동등비교연산자인 "=="을 사용하면 절대! 안된다.
대신, 자바에서 문자열이 같은지 비교할 때는 .equals()메소드를 이용해야 한다.
MainClass13.java
package test.main;
import java.util.Random;
import java.util.Scanner;
public class MainClass13 {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
while(true) {
System.out.print("탈출하고 싶으면 q 를 입력하세요:");
String line=scan.nextLine();
/*
* java 에서 문자열이 같은지 비교할때는 .equals() 메소드를 이용해야 한다.
*/
if(line.equals("q")) {
break;
}
}
System.out.println("main 메소드가 종료 됩니다.");
}
}
출력 결과
반응형
'development > Java' 카테고리의 다른 글
[Java] 상속 Inheritance #2 / Override (0) | 2021.11.03 |
---|---|
[Java] 상속 Inheritance #1 / extends, super, 다형성(polymorphism), 상속에서의 casting (0) | 2021.11.03 |
[Java] 배열 Array #2 / 배열에서 Random 사용하기 (0) | 2021.11.02 |
[Java] 배열 Array #1 / 확장 for문, Class 객체 배열 생성하기, 입력받은 값을 배열에 집어넣기 (0) | 2021.11.02 |
[Java] Wrapper Class (0) | 2021.11.02 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Django
- baekjoon
- 장고
- 브루트 포스
- web
- 자바스크립트
- Java
- append
- jQuery
- 문자열
- 큐
- 파이썬
- CSS
- R
- Case When
- Oracle
- bootstrap
- 단계별로풀어보기
- javascript
- 정렬
- 고득점 키트
- 백준
- jsp
- html
- 자바
- 덱
- brute force
- python
- 스프링
- 프로그래머스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함