-
[Java Basic]실행 흐름과 컨트롤(윤성우의 열혈 Java 프로그래밍)Java/Basic 2020. 12. 23. 05:34
if 문과 if ~ else 문
if문
if (조건문){
실행문
}
if ~ else 문
if(조건문){
실행문
}
else{
실행문
}
class IEBasic { public static void main(String[] args){ int n1 = 5; int n2 = 7; //if문 if(n1 < n2){ System.out.println("n1 < n2 is true"); } //if ~ else 문 if(n1 == n2){ System.out.println("n1 == n2 is true"); } else{ System.out.println("n1 == n2 id false"); } } }
else ~ if 문
if(조건문){
실행문
}
else if(조건문){
실행문
}
else {
실행문
}
class IEIE{ public static void main(String[] args){ int num = 120; if(num < 0) //먼저 검사 System.out.println("0 미만"); else if(num < 100) //위 조건이 만족되지 않으면 여기서 다시 검사 System.out.println("0 이상 100 미만"); else //아무것도 만족되지 않으면 else에 속한 문장 실행 System.out.println("100 이상"); } }
Switch 와 Break
class SwitchBasic{ public static void main(String[] args){ int n = 3; switch(n){ case 1: System.out.println("Simple Java"); case 2: System.out.println("Funny Java"); case 3: System.out.println("Fantastic Java"); default: System.out.println("The best programming language"); } System.out.println("Do you like java?"); } }
switch(n) 여기서 n 에 해당하는 숫자가 1,2,3,4 이런 형태로 나와서 case1 case2 이곳으로 가는것이다.
다만 해당 숫자에 가서도 뒤에 나오는 것들이 다 출력되는 것을 볼 수 있다.
그러지 않으려면 여기서 Break 문을 사용하면 된다.
class SwitchBreak{ public static void main(String[] args){ int n = 3; switch(n){ case 1: System.out.println("Simple Java"); break; case 2: System.out.println("Funny Java"); break; case 3: System.out.println("Fantastic Java"); break; default: System.out.println("The best programming language"); } System.out.println("Do you like java?"); } }
Break문을 사용시 위처럼 해당 case 만 출력되고 밖으로 나가게 된다.
class CondOp{ public static void main(String[] args){ int num1 = 50; int num2 = 100; int big; int diff; big = (num1 > num2) ? num1 : num2; System.out.println("큰 수는 :" + big); diff = (num1 > num2) ? (num1 - num2) : (num2 - num1); System.out.println("절댓값 :" + diff); } }
참일경우 앞의 값, 거짓일 경우 뒤의 값이 출력된다.
(조건문:참) ? num1 : num2;
num1 이 출력
(조건문:거짓) ? num1 : num2;
num2 이 출력
for문
class ForBasic{ public static void main(String[] args){ for(int i=0; i<5;i++) System.out.println("I love Java" + i); } }
결과
While 문
class WhileBasic{ public static void main(String[] args){ int num=0; while(num<5){ System.out.println("I like Java" + num); num++; } } }
결과
Do While 문
while 문과는 달리 일단 DO! 한번은 실행해준 뒤 조건을 확인한다.!
class DoWhileBasic{ public static void main(String[] args){ int num = 0; do { System.out.println("I like Java" + num); num++; }while(num<5); } }
결과
Continue 사용
class ContinueBasic{ public static void main(String[] args){ int num = 0; int count = 0; while((num++)<100){ if(((num%5)!=0)||((num%7)!=0)) continue; count++; System.out.println(num); //5와 7의 배수인 경우에만 실행 } System.out.println("count : " + count); } }
continue 를 사용한다면 밑으로 가지 않고 (해당 경우에선 count++ 로 가지않고) 위의 조건문으로 다시 간다
이 경우엔 num 가 5와 7의 배수일 경우에만 count 가 된다.
BreakPoint
class BreakPoing{ public static void main(String[] args){ for(int i = 1;i<10;i++){ for(int j=1;j<10;j++){ if((i*j)==72){ System.out.println(i + "X" + j + "=" + i*j); break; } } } } }
위에서 처음에 나왔을 때 나오고 싶다면 밑에처럼 outer 를 잡아준다.
class LabeledBreakPoing{ public static void main(String[] args){ outer: for(int i=1; i<10;i++){ for(int j=1;j<10;j++){ if((i*j)==72){ System.out.println(i+"X"+j+"="+i*j); break outer; } } } } }
'Java > Basic' 카테고리의 다른 글
[Java_Basic]클래스와 인스턴스(윤성우의 열혈 Java 프로그래밍) (0) 2020.12.26 [Java_Basic]메소드와 변수의 스코프(윤성우의 열혈 Java 프로그래밍) (0) 2020.12.26 [Java_Basic]연산자(윤성우의 열혈 Java 프로그래밍) (0) 2020.12.16 [Java_Basic]상수와 형 변환(윤성우의 열혈 Java 프로그래밍) (0) 2020.12.15 [Java_Basic]변수와 자료형(윤성우의 열혈 Java 프로그래밍) (0) 2020.12.14