조건문

Boolean


boolean 자료형은 참 또는 거짓(true/false)의 값을 갖는다.

boolean 연산은 조건문의 판단 기준으로 많이 사용한다.

System.out.println(1 < 3);

-> true

System.out.println(1 > 3);

-> false

 

Single equal(=) - assign


assign → single equal (=) ⇒ 변수에 값을 지정 / 값에 이름을 붙여줌.

x = 1;

x라는 변수에 1을 할당했다고 표현이 된다.

 

boolean result = 1 = 1;
System.out.println(result);

-> 1 error

result에다 1을 할당해주고 또 1을 할당해준다는 의미는 말이 안되기 때문에 에러가 발생

 

Double equal(==) - compare


compare → double equal(==) ⇒ 두 값이 같은지 비교.

boolean result = 1 == 1;
System.out.println(result);

-> true

result에 1을 할당해주고 그 값이 1과 같냐고 비교하는 의미

 

조건문 if


if문은 가장 기본적인 조건문이다. '만일(if) 조건식이 참(true)이면 괄호 {} 안의 문장들을 수행하라' 라는 의미이다.

 

if문 구조

if(조건식) {
   실행문;  // 조건식이 참(true)일 때 수행될 문장
}

조건식이 참(true)이면 실행문을 실행한다. 거짓(false)이면 실행하지 않고 넘어간다.

 

if ~ else문의 구조

if (조건식) {
    // 조건식이 참(true)일 때 수행될 문장
} esle {
    // 조건식이 거짓(false)일 때 수행될 문장
}

else는 조건식의 결과가 참이 아닐 때, 거짓일 때 else블럭의 문장을 수행한다.

 

if ~ else if문 구조

if ~ else 문은 두 가지 경우 중 하나가 수행되는 구조인데, 처리해야 할 경우의 수가 셋 이상인 경우에는 if ~ else if문을 사용한다.

if (조건식1) {
    // 조건식1의 결과가 참(true)일 때 수행될 문장
} else if (조건식2) {       // 여러개의 else if를 사용 할 수 있다
    // 조건식2의 결과가 참(true)일 때 수행될 문장
} else if (조건식3) {
    // 조건식3의 결과가 참(true)일 때 수행될 문장
} else {      // else블럭은 생략 가능
    // 위의 어느 조건식도 만족하지 않을 때 수행될 문장
}

첫 번째 조건식부터 순서대로 평가해서 결과가 참인 조건식을 만나면, 해당 블럭 {}만 수행하고, 'if ~ else if'문 전체를 벗어난다.

 

연산자의 우선순위


비교 연산자는 연산 순위가 낮다

 

논리연산자

 

&&(AND) 

 -> 피연산자 모두 true여야 true의 값을 얻는다. 하나라도 false면 false의 값을 얻음

||(OR)

 -> 피연산자 한 쪽만 true면 true의 값을 얻을 수 있다. 

 

비트연산자


비트연산자는 피연산자를 비트단위로 논리 연산한다.

 

|(OR) : 피연산자 중 한 쪽의 값이 1이면, 1을 결과로 얻는다.

&(AND) : 피연산자 양 쪽의 값이 모두 1이어야만 1을 결과로 얻는다.

^(XOR) : 피연산자의 값이 서로 다를 때만 1을 결과로 얻는다

~(NOT) : 피연산자의 값을 반대로 바꾸는 연산자 1 > 0, 0 > 1

 

중복제거


프로그래밍을 할때 중복을 제거하는 것이 중요하다.

if (answer1 == x + y && answer2 != x * y) {
	System.out.println(”Muggle!”);
}
if (answer1 != x + y && answer2 == x * y) {
	System.out.println(”Muggle!”);
}

(중복 제거) →

if ((answer1 == x + y && answer2 != x * y) || (answer1 != x + y && answer2 == x * y)) {
	System.out.println(”Muggle!”);
}

관심사에따라 분리하기 위해 변수를 사용한다.

중복이 있으면 찾아서 정리하기 ->  관심사의 분리 이기도 하면서 중복을 제거한것

변수를 만들면 여러번 사용이 가능하다. (재사용 가능)

'Java' 카테고리의 다른 글

배열  (0) 2022.05.22
반복문 - for문  (0) 2022.05.22
입출력  (0) 2022.05.15
변수와 타입  (0) 2022.05.15
Hello, World  (0) 2022.05.15