반응형
250x250
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

Yeonee's Story

[자바] 단독if문,if~else문,if ~ else if문,String result(1) 본문

JAVA

[자바] 단독if문,if~else문,if ~ else if문,String result(1)

yeonee 여니 2023. 3. 30. 11:02
728x90
반응형
SMALL

<조건문>

 

- 조건식을 통해 , 거짓 이냐를 판단해서 그에 해당하는 코드 실행

 

- 조건식의 결과는 항상 true/false여야함.

 보통 조건식에서는 비교연산자(대소,동등), 논리연산자(&&,||) 주로

사용한다.

 

- 조건문은 크게 if( 단독if, if~else, if ~eles if, 중복 if) switch문으로 나뉜다.

 

 

1. 단독 if

[표현법]

if(조건식) {

조건식이 true일때 실행되는 코드

}

 

 => 조건식의 결과가 (true) 경우 중괄호 블럭 안의 코드가 실행

 => 조건식의 결과가 거짓(false) 경우 중괄호 블럭은 무시하고 넘어감.

 

사용자에게 정수값을 입력받은후 "양수다" “양수가 아니다 출력

 

 

public void method1() {

 

Scanner sc = new Scanner(System.in);

 

System.out.print("정수를 입력하세요 : ");

int num = sc.nextInt();

 

System.out.println(num > 0 ? "양수다" : "양수가 아니다");

 

//삼항연산자를 if문으로 바꾸기

if(num > 0) {

System.out.println("양수다");

}

if(num <= 0) { // 실행될 필요가 없는 조건이지만 jvm if문을 만나면 무조건 조건검사함.

System.out.println("양수가 아니다");

}

}

 

2. if ~ else

 

if(조건식) {

조건식이 true라면 실행될 코드

 } else {

if문의 조건식이 false라면 실행될 코드

}

 

public void method2() {

 

Scanner sc = new Scanner(System.in);

 

System.out.print("정수를 입력하세요 : ");

int num = sc.nextInt();

 

System.out.println(num > 0 ? "양수다" : "양수가 아니다");

 

//삼항연산자를 if문으로 바꾸기

if(num > 0) {

System.out.println("양수다");

}

else { // 실행될 필요가 없는 조건이지만 jvm if문을 만나면 무조건 조건검사함.

System.out.println("양수가 아니다");

}

}

 

3. if ~ else if

* 같은 비교대상으로 여러개의 조건을 제시해야할 경우 사용

* if(조건식1) { // 조건식1 트루라면 실행코드1 실행시키고 if블록 종료

//실행코드1

} else if (조건식 2){  // 조건식2 트루라면 실행코드2 실행시키고 if블록 종료

실행코드2

} else if (조건식 3) {  // 조건식3 트루라면 실행코드3 실행시키고 if블록 종료

실행코드3

} else { // 모든 조건이 false 경우 자동으로 실행.

실행코드4

}

 

public void method3() {

 

Scanner sc = new Scanner(System.in);

 

System.out.print("정수 : ");

int num = sc.nextInt();

if(num > 0) {

System.out.println("양수다");

} else if(num == 0) {

System.out.println("0이다");

} else{

System.out.println("음수다");

}

}

 

4. String result = “”; (1)

 

// 사용자가 입력한 나이값을 가지고 어린이/청소년/성인을 출력

// if else if문으로 만들어주기

 

 

public void method4() {

 

Scanner sc = new Scanner(System.in);

 

System.out.print("나이를 입력하세요 : ");

int age = sc.nextInt();

 

// 어린이(13세이하), 청소년은 (13세초과~ 19세이하), 성인(19 초과)

if( age <= 13) {

System.out.println("어린이");

} else if(age <= 19) {

System.out.println("청소년");

} else /* if(age > 19) */{

System.out.println("성인");

}

 

// 다른방법으로 풀기 -> 어린이, 청소년, 성인에 대한 값을 담아두고 마지막에 출력하기

String result = ""; // 박스를 먼저 만들어두고 값을 대입하기(초기화 과정 필수)

 

if( age <= 13) {

result = "어린이";

} else if(age <= 19) {

result = "청소년";

} else if( age > 19) {

result = "성인";

}

// 해당블럭안에서 선언된 변수는 해당블럭이 끝나면 자동으로 사라진다.

System.out.println(result);

}

 

5. String result = “”; (2)

public void method5() {

 

Scanner sc = new Scanner(System.in);

//사용자에게 이름, 성별을 입력받아 남자인지 여자인지 출력해볼 예정

 

System.out.print("이름 : ");

String name = sc.nextLine();

 

System.out.print("(M/F) : ");

char gender = sc.nextLine().charAt(0);

 

String result;

if(gender == 'm' || gender == 'M') {

result = "남학생";

}

else if(gender == 'f' || gender == 'F') {

result = "여학생";

}else {

// return이라는 녀석을 이용

//result = "잘못입력하셨습니다.";

return; // 현재 호출된 일반메소드를 빠져나가는 역할을 한다.

}

 

// xxx님은 xxx이다.

System.out.println(name+"님은 "+result+"이다");

}

 

 

728x90
반응형
LIST