산술 연산자(arithmetic operators)는 일반 수학에 사용되는 것과 같은 방식으로 산술식에서 사용
산술 연산자는 일반적으로 +, -, /, % 과 같은 기호를 통해 산술에 사용되는 '일반 연산'과 괄호를 이용한 '우선 순위 연산', 그리고 변수에 값을 저장하여 사용하는 '변수를 이용한 연산' ++, -- 를 이용한 '증감 연산자' 등으로 활용할 수 있다.
이를 활용한 예제는 다음과 같다.
1) 일반 연산
: 뎃셈, 뺄셈, 곱셈 나눗셈과 같이 모든 숫자형에 대한 산술 연산을 할 수 있다.
package chap_02;
public class _01_Operator1 {
public static void main(String[] args) {
// 일반 연산
System.out.println(4 + 2); // 6
System.out.println(4 - 2); // 2
System.out.println(4 * 2); // 8
System.out.println(4 / 2); // 1
System.out.println(5 / 2); // 2.5 -> 2 뒤에 실수 부분은 생략되어 정수 부분만 출력
System.out.println(2 / 4); // 0.5 -> 0
System.out.println(4 % 2); // 0, 나머지 연산자
System.out.println(5 % 2); // 1
}
}
2) 우선 순위 연산(괄호 이용)
: 괄호를 이용하여 괄호 안의 숫자를 먼저 산술 연산하고 그 다음에 괄호 바깥의 숫자의 산술 연산을 계산한다.
package chap_02;
public class _01_Operator1 {
public static void main(String[] args) {
// 우선 순위 연산(괄호 이용)
System.out.println(2 + 2 * 2); // 6
System.out.println((2 + 2) * 2); // 8
System.out.println(2 + (2 * 2)); // 6
}
}
3) 변수를 이용한 연산
: 숫자를 변수 안에 저장하여 그 변수를 활용하여 산술 연산한다. 보통 연속적으로 사용하는 값에 대해 변수에 저장하여 그 변수를 계속 활용할 때 사용한다.
package chap_02;
public class _01_Operator1 {
public static void main(String[] args) {
// 변수를 이용한 연산
int a = 20;
int b = 10;
int c;
c = a + b;
System.out.println(c); // 30
c = a - b;
System.out.println(c); // 10
c = a * b;
System.out.println(c); // 200
c = a / b;
System.out.println(c); // 2
c = a % b;
System.out.println(c); // 0
}
}
4) 증감 연산 ++, --
: 증가 연산자는 하나를 증가시키며, 감소 연산자는 하나를 감소시킨다.
package chap_02;
public class _01_Operator1 {
public static void main(String[] args) {
// 증감 연산 ++, --
int val;
// ++val : 앞에 증감 연산을 붙일 경우 변수에 +1 값이 바로 출력된다
val = 10;
System.out.println(val); // 10
System.out.println(++val); // 11
System.out.println(val); // 11
// val++ : 뒤에 증감 연산을 붙여줄 경우는 먼저 기존의 변수 값을 출력히고 다음에 해당 변수를 출력했을 때 +1 한 값이 출력된다
val = 10;
System.out.println(val); // 10
System.out.println(val++); // 10
System.out.println(val); // 11
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
// 은행 대기번호 표
int waiting = 0;
System.out.println("대기 인원 : " + waiting++); // 대기 인원 : 0
System.out.println("대기 인원 : " + waiting++); // 대기 인원 : 1
System.out.println("대기 인원 : " + waiting++); // 대기 인원 : 2
System.out.println("총 대기 인원 : " + waiting); // 총 대기 인원 : 3
}
}