[Java] Operator : 연산자(1)

chunghyun·2023년 7월 26일

Java

목록 보기
1/4

연산자

  • 연산자(Operator)는 주어진 변수나 리터럴에 대해 연산을 수행하기 위한 것이다. 연산자에 의해 처리되는 대상을 피연산자(Operator)라고 한다.
  • 연산자는 산술, 대입, 비교(관계), 논리, 삼항 연산자 등으로 분류할 수 있다.

산술 연산자

  • 산술 연산자(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
    }
}
profile
개발 공부 중

0개의 댓글