"참"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
19번째 줄: 19번째 줄:
 
:*System.out.println(!b1); -> b1 이 true 이므로 결과는 false 이다.
 
:*System.out.println(!b1); -> b1 이 true 이므로 결과는 false 이다.
 
:* System.out.println(!b2); -> b1 이 false 이므로 결과는 true 이다.<ref>〈[https://programmers.co.kr/learn/courses/5/lessons/144 자바 입문 - 논리연산자 | 프로그래머스]〉, 《프로그래머스》</ref>
 
:* System.out.println(!b2); -> b1 이 false 이므로 결과는 true 이다.<ref>〈[https://programmers.co.kr/learn/courses/5/lessons/144 자바 입문 - 논리연산자 | 프로그래머스]〉, 《프로그래머스》</ref>
 +
 +
== 예제 ==
 +
=== 조건문 ===
 +
true 연산자는 보통 다음처럼 조건문의 판단 기준으로 많이 사용된다.
 +
int base = 180;
 +
int height = 185;
 +
boolean isTall = true;
 +
boolean notTall = false;
 +
 +
if (isTall) {
 +
    System.out.println("키가 큽니다.");
 +
}
 +
하나의 예를 더 보도록 하겠다
 +
int i = 3;
 +
boolean isOdd = i % 2 == 1;
 +
i % 2 == 1은 i를 2로 나누었을 때 나머지가 1인지를 묻는 조건문이다. i는 3이므로 3을 2로 나눈 나머지는 1이 되어 참이 된다. 따라서 isOdd는 true값을 갖게 될것이다.<ref>〈[https://wikidocs.net/220 부울 (boolean) - 점프 투 자바]〉, 《위키독스》</ref>
  
 
{{각주}}
 
{{각주}}

2021년 7월 13일 (화) 14:24 판

true(참)은 '사실'이라는 영문 뜻도 가지지만 프로그래밍 에서는 boolean 타입의 값 중 '참(사실)'으로 쓰인다.

boolean 자료형

컴퓨터 과학에서 불리언(boolean) 자료형은 논리 자료형이라고도 하며, 참과 거짓을 나타내는 데 쓰인다. 주로 참은 1, 거짓은 0에 대응하나 언어마다 차이가 있다. 숫자를 쓰지 않고 참과 거짓을 나타내는 영단어 true와 false를 쓰기도 한다. 불리언(Boolean)이라는 말은 영국의 수학자 겸 논리학자인 조지 불(George Boole)의 이름에서 따온 것이다.[1]

논리 연산자

흔히 불린(boolean)타입은 논리 연산자와 같이 쓰이는데 그 연산자는 다음과 같다.

  • 논리곱 (&&, &) - 피연산자가 모두 true일 경우에만 연산 결과가 true 이다.
  • System.out.println(b1 && b2); -> b2가 false 이므로 결과는 false 이다.
  • System.out.println(b1 && b3); -> b1과 b2 모두 true 이므로 결과는 true 이다.
  • 논리합 (||,|) - 피연산자 중 하나만 true이면 연산 결과는 true 이다.

이 코드의 결과값으로는 1, 0, 0이 나온다. 왜나하면 true는 1이고 false는 0으로 표현하기 때문이다.

  • System.out.println(b1 || b2); -> b1 이 true이므로 결과는 true 이다.
  • 배타적 논리합 () -> 피연산자가 서로 다른 값일 경우만 연산 결과가 true 이다.
  • System.out.println(b1 ^ b2); -> b1은 true, b2는 false로 서로 다르므로 결과는 true 이다.
  • System.out.println(b1 ^ b3); -> b1, b3 모두 true로 서로 같다. 결과는false 이다.
  • 논리 부정 (!) -> 피연산자의 논리값을 바꾼다. true는 false로 false는 true로 바꾼다.
  • System.out.println(!b1); -> b1 이 true 이므로 결과는 false 이다.
  • System.out.println(!b2); -> b1 이 false 이므로 결과는 true 이다.[2]

예제

조건문

true 연산자는 보통 다음처럼 조건문의 판단 기준으로 많이 사용된다.

int base = 180;
int height = 185;
boolean isTall = true;
boolean notTall = false;
if (isTall) {
   System.out.println("키가 큽니다.");
}

하나의 예를 더 보도록 하겠다

int i = 3;
boolean isOdd = i % 2 == 1;

i % 2 == 1은 i를 2로 나누었을 때 나머지가 1인지를 묻는 조건문이다. i는 3이므로 3을 2로 나눈 나머지는 1이 되어 참이 된다. 따라서 isOdd는 true값을 갖게 될것이다.[3]

각주

참고자료

같이 보기