본문 바로가기

Java

Java (연산자 정리)

먼저 자바는 계산기로써의 기능도 수행한다.

System.out.println(4 + 2); // 6
System.out.println(4 - 2); // 2
System.out.println(4 * 2); // 8
System.out.println(4 / 2); // 2
System.out.println(5 / 2); // 2
System.out.println(2 / 4); // 0
System.out.println(5 % 2); // 1

 

더하기, 마이너스는 " +와 -  " ,  곱하기는 *로 표현한다 , 나누기는 /로 표현한다, 나눈 후 나머지 값의 계산은 %로 표현. 추가로 우리가 일반적으로 알고 있는 사칙연산도 수행한다.

// 우선 순위 연산
System.out.println(2 + 2 * 2); // 사칙연산을 한다
System.out.println((2 + 2) * 2); // 순서를 내가 정함
System.out.println(2 + (2 * 2)); // 6

 

증감연산 (++, --)

// 증감 연산 ++, --
int val;
val = 10;
System.out.println(val); //10
System.out.println(++val); // 1 + 10
System.out.println(val); // 11
//++val;  1을 더한 뒤에 변수를 연산함


val = 10;
System.out.println(val); //10
System.out.println(val++); // 10을 출력한 뒤 1을 더함
System.out.println(val); //11
//val++;  변수 연산 한 뒤에 1을 더함

val = 10;
System.out.println(val); //10
System.out.println(--val); //9
System.out.println(val); //9

val = 10;
System.out.println(val); //10
System.out.println(val--); //10
System.out.println(val); //9

 

++와 -- 를 함으로써 1을 더하거나 1을 뺄 수가 있다. 하지만 그 위치가 변수의 앞에 있냐, 뒤에 있냐에 따라 달라진다. 앞에 있을 경우에는 1을 계산한 뒤에 변수를 연산하고, 뒤에 있을 경우에는 변수  연산 한 뒤에 1을 계산한다.

 

// 은행 대기번호 표
int waiting = 0; // 처음 뽑는 사람은 앞에 아무도 없으니 0 즉 뒤에 ++을 붙여야 함
System.out.println("대기 인원" + waiting++); // 대기인원 : 0
System.out.println("대기 인원" + waiting++); // 대기인원 : 1
System.out.println("대기 인원" + waiting++); // 대기인원 : 2

System.out.println("총 대기인원" + waiting); // 총 대기인원: 3

 

사용 예시로써 ++을 할 때 마다 값이 올라가는 것을 볼 수 있다.

 

대입 연산

int num = 10;
num += 2;
System.out.println(num); // 12

num = 10;
num -= 2;
System.out.println(num); // 8

num = 10;
num *= 2;
System.out.println(num); //20

num = 10;
num /= 2;
System.out.println(num); //5 몫

num = 10;
num %= 2;
System.out.println(num); //0 나머지

 

비교 연산자

System.out.println(5 > 3); // 5는 3보다 크다 (참이면 true, 거짓이면 false)
System.out.println(5 >=3); // 5는 3보다 크거나 같다 (true)
System.out.println(5 >=5); // 5는 5보다 크거나 같다 (true)
System.out.println(5 >=7); // 5는 7보다 크거나 같다 (false)

System.out.println(5 < 3); // 5는 3보다 작다 (false)
System.out.println(5 <= 3); // 5는 3보다 작거나 같다 (false)

System.out.println(5 == 5); // 5는 5와 같다 (ture)
System.out.println(5 == 3); // 5는 3과 같다 (false)
System.out.println(5 != 5); // 5는 5와 같지 않다 (false)
System.out.println(5 != 3); // 5는 3과 같지 않다 (true)

 

논리 연산자

boolean 김치찌개 = true;
boolean 계란말이 = false;
boolean 제육볶음 = true;

System.out.println(김치찌개 || 계란말이 || 제육볶음); // 하나라도 true 이면 true
System.out.println(김치찌개 && 계란말이 && 제육볶음); // 모두 true 이면 true, 하나라도 거짓이면 false

 

여기에서 중요한 포인트는 ||와 &&이다. 

 

  • || : OR 연산자이다. 들어가 있는 값들 중 하나만이라도 true이면 true로 반환 값을 정한다.
  • &&: AND 연산자이다. 값들 중 하나만이라도 false인 경우 false로 처리되며 모두 다 true인 경우 true로 반환한다.
// And 연산 &&
System.out.println((5 > 3) && (3 > 1)); // 5는 3보다 크고, 3은 1보다 크다 (true)
System.out.println((5 > 3) && (3 < 1)); // 5는 3보다 크고, 3은 1보다 작다 (false)

// Or 연산 ||
System.out.println((5 > 3) || (3 > 1)); // 5는 3보다 크거나, 3은 1보다 크다 (true)
System.out.println((5 > 3) || (3 < 1)); // 5는 3보다 크거나, 3은 1보다 작다 (true)
System.out.println((5 < 3) || (3 < 1)); // 5는 3보다 작거나, 3은 1보다 작다 (false) 

 

논리 부정 연산자

System.out.println(!true); // false
System.out.println(!false); // ture
System.out.println(!(5 == 5)); // false
System.out.println(!( 5 == 3)); // true

 

앞에 !를 붙였다는 것은 현재 지닌 값 (true, false) 의 반대 값을 반환한다라는 뜻이다.

 

조건 삼항 연산자:

결과(변수 명) = (조건) ? (참의 경우 결과값) : (거짓의 경우 결과값)

int x = 5;
int y = 3;
int max = (x > y) ? x : y;
System.out.println(max); // 5

int min = (x < y) ? x : y;
System.out.println(min); // 3

boolean b = (x == y) ? true : false;
System.out.println(b); // false

String s = (x != y) ? "달라요" : "같아요";
System.out.println(s); // 달라요

 

조건식에 대하여 참일 경우에는 :  기준으로 앞에 결과값을 쓰고, 거짓일 경우에는 뒤에 결과값을 쓴다.

'Java' 카테고리의 다른 글

Java (배열)  (1) 2023.12.31
Java (이중 반복문)  (0) 2023.12.31
Java (각 반복문 종류와 응용)  (0) 2023.12.31
Java (문자열 메서드 및 이스케이프 문자)  (0) 2023.12.30
Java (타입 및 형 변환)  (1) 2023.12.30