대입 연산자
: =
을 대입연산자라고 하며 오른쪽에 있는 데이터를 왼쪽에 대입한다는 의미이다.
( ex. int num = 10; ) --> 10이라는 데이터를 int type의 num 변수에 대입하겠다라는 뜻.
사칙 연산자
: 덧셈(+), 뺄셈(-), 나눗셈(/), 곱셈(*)을 의미한다.
이때 덧셈의 경우 숫자끼리는 말그대로 연산이되지만 문자열의 경우는 결합이된다.
public static void main(String[] args) {
int n1 = 3;
int n2 = 4;
int sum = n1+n2;
System.out.println(sum); // 수치연산 +
String s1 = "나의 나이는";
int age = 30;
System.out.println(s1 + age); // 결합
System.out.println(5-3); // 뺄셈 -
System.out.println(10/2); // 나눗셈 /
System.out.println(2*20); // 곱셈 *
}
비교 연산자
: 크기의 비교를 의미한다.
public static void main(String[] args) {
System.out.println(1==1); // 같은지? true
System.out.println(1==2); // 같은지? false
System.out.println(!5==3); // 같지 않은지? true
System.out.println(3>1) // 큰지? true
System.out.println(3<1); // 작은지? false
System.out.println(2>=1); // 크거나 같은지? true
System.out.println(2>=2); // 크거나 같은지? true
System.out.println(2<=1); // 작거나 같은지? false
System.out.println(2<=2); // 작거나 같은지? true
int n1 = 1;
int n2 = 2;
System.out.println( n1==n1 || n1==n2); // true || false --> true
}
논리 연산자
: AND (둘다 true이면 true), OR(둘중 1개라도 true이면 true)
public static void main(String[] args) {
System.out.println( 1==1 && 1==2); // true && false --> false
int n1 = 1;
int n2 = 2;
System.out.println( n1==n1 || n1==n2); // true || false --> true
}
조건 연산자
: 삼항 연사자라고도 불리며 비교식은 다음과 같다.
조건(비교연산자) ? true : false
public static void main(String[] args) {
int n1 = 5;
System.out.println( n1==5 ? "5가 맞다" : "5개 아니다");
}
나머지 연산자
: / (몫이 나온다) % (나머지가 나온다)
public static void main(String[] args) {
System.out.println(130/100); // 몫 : 1
System.out.println(130%100); // 나머지 : 30
}
전위연산자
++i 와 후위연산자
i++ 차이
1) i의 값을 1 더한다
2) i의 값을 반환
ex) a = ++b --> b의값을 1 증가시킨 후에, 증가한 b값을 a에 대입
1) i의 현재값을 보관
2) i의 값을 1 더한다
3) 보관했던 i 값을 반환
ex) a = b++ --> b의 값을 a에 대입한 후에, b의 값을 1 증가
public static void main(String[] args) {
int x = 10;
int y = 10;
int z = 0;
x++;
System.out.println("x : " + x); // x=11
++x;
System.out.println("x : " + x); // x=12
y--;
--y;
System.out.println("y : " + y); // y=8
z = x++;
System.out.println("z : " + z); // z=12;
System.out.println("x : " + x); // x=13;
z = ++x;
System.out.println("z : " + z); // z=14;
System.out.println("x : " + x); // x=14;
z = ++x + y++; // x= 15 y=8 -> y=9
System.out.println("z : " + z); // z=23
System.out.println("y : " + y); // y=9
System.out.println("x : " + x); // x=15
}
출처 : 이지업 컨텐츠 내의 데어프로그래밍 자바강의