산술연산자는 사칙연산(=,-,*,/)와 나머지를 구하는 연산자(%)로 나뉜다.
int n1, n2, n3;
n1 = 20;
n2 = 7;
n3 = n1 + n2;
System.out.println("n3의 값 : " + n3); // 27
n3 = n1 - n2;
System.out.println("n3의 값 : " + n3); // 13
n3 = n1/n2;
System.out.println("n3의 값 : " + n3); // 2
n3 = n1%n2;
System.out.println("n3의 값 : " + n3); // 6
우변에 있는 값을 좌변에 대입한다, 라는 점을 잊지 말자!
int n1 = 10;
int n2 = 7;
복합대입연산자 : 산술연산자와 대입연산자가 합쳐진 형태(+=, -=, =, /=, %=)
System.out.println("+=연산자 : n1 += n2 : " + (n1+=n2)); // 17
System.out.println("-=연산자 : n1 -= n2 : " + (n1-=n2)); // 10
System.out.println("=연산자 : n1 = n2 : " + (n1=n2)); // 70
System.out.println("/=연산자 : n1 /= n2 : " + (n1/=n2)); // 10
System.out.println("%=연산자 : n1 %= n2 : " + (n1%=n2)); // 3
대입연산자는 변수 안의 값을 바꾸기 때문에 일반 연산자와 달리 나중에 발생하는 연산에도 영향을 끼친다.
두 수의 값을 비교할 때 사용하는 연산자
비교한 결과를 논리형 데이터(true, false)로 반환한다.
(초과), <(미만), >=(이상), <=(이하), ==, !=
boolean result;
result = n1 < n2;
System.out.println(result); // 결과: false
비교연산자를 통한 연산이 2개 이상 필요할 때 사용한다.
&&(AND), ||(OR), !(NOT)
연산 결과를 논리형 데이터로 반환한다.
&&(AND)
두 개 다 참이어야 참을 반환, 나머지는 다 False
||(OR)
둘 중 하나라도 참이면 참을 반환
!(NOT)
연산 결과를 거꾸로 만듬
ex) True -> False
&, |, ^, ~
논리연산자와 유사하지만 bit 단위 (2진수)의 연산만 가능하다.
일반적으로 암호화, 복호화 작업에 사용된다.
1씩 증가시키거나 1씩 감소시켜주는 연산자
++, --
선행증감 : 변수의 앞에서 사용된다.
a = 10;
System.out.println("++a : " + ++a); // 결과 : 11
후행증감 : 변수의 뒤에서 사용된다.
b = 10;
System.out.println("b++ : " + b++); // 결과: 10
System.out.println("b : " + b); // 결과: 11
이와 같이 1을 더해주되, 다음 번에 다시 한 번 사용될 때 적용한다.
하나의 조건을 정의하여, 조건이 참일 때 반환할 명령, 조건이 거짓일 때 반환할 명령을 얻어내기 위한 연산자이다.
int a = 10;
int b = 15;
boolean result = ++a >= b ? true : false;
System.out.println("result : " + result); // 결과: false
char result2 = ++a >= b ? 'O' : 'X';
System.out.println("result2 : " + result2); // 결과: X
int result3 = ++a >= b ? 1 : 0;
System.out.println("result3 : " + result3); // 결과: 0