[JAVA] 연산자

이가영·2023년 11월 23일
0

JAVA

목록 보기
7/12

산술 연산자

  • "+" : 더하기
  • "-" : 빼기
  • "*" : 곱하기
  • "/" : 나누었을 때의 몫 출력
  • "%" : 나누었을 때의 나머지 출력

증감 연산자

  • val++
    -> 이 문장의 연산을 먼저 수행하고 나서 value에다가 1이 더해짐

  • ++val
    -> value에다가 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); // 2
        System.out.println(5 / 2); // 2
        System.out.println(2 / 4); // 0
        System.out.println(4 % 2); // 0
        System.out.println(5 % 2); // 1

        // 우선 순위 연산
        System.out.println(2 + 2 * 2); // 6
        System.out.println((2 + 2) * 2); // 8
        System.out.println(2 + (2 * 2)); // 6

        // 변수를 이용한 연산
        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

        // 증감 연산 ++, --
        int val;
        val = 10;
        System.out.println(val); // 10
        System.out.println(++val); // 11
        System.out.println(val); // 11

        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
    }
}


대입 연산자

  • num = num + 1;
  • num = num - 1;
  • num = num * 1;
  • num = num / 1;
  • num = num % 1;

복합 대입 연산자

  • num += 1;
  • num -= 1;
  • num *= 1;
  • num /= 1;
  • num %= 1;

연습문제

package chap_02;

public class _02_Operator2 {
    public static void main(String[] args) {
        // 대입 연산자
        int num = 10;
        num = num + 2;
        System.out.println(num); // 12

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

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

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

        num = num % 2;
        System.out.println(num); // 0

        // 복합 대입 연산자
        num = 10;
        // num = num + 2;
        num += 2;
        System.out.println(num); // 12

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

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

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

        // num = num % 2;
        num %= 2;
        System.out.println(num); // 0
    }
}


비교 연산자

연습문제

package chap_02;

public class _03_Operator3 {
    public static void main(String[] args) {
        // 비교 연산자
        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 와 같다 (true)
        System.out.println(5 == 3); // 5 는 3 과 같다 (false)
        System.out.println(5 != 5); // 5 는 5 와 같지 않다 (false)
        System.out.println(5 != 3); // 5 는 3 과 같지 않다 (true)
    }
}


논리 연산자

연습문제

package chap_02;

public class _04_Operator4 {
    public static void main(String[] args) {
        // 논리 연산자
        boolean 김치찌개 = true;
        boolean 계란말이 = true;
        boolean 제육볶음 = true;

        System.out.println(김치찌개 || 계란말이 || 제육볶음); // 하나라도 true 이면 true (괜찮은 식당)
        System.out.println(김치찌개 && 계란말이 && 제육볶음); // 모두 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(1 < 3 < 5); // 불가능한 코드

        // 논리 부정 연산자
        System.out.println(!true); // false
        System.out.println(!false); // true
        System.out.println(!(5 == 5)); // false
        System.out.println(!(5 == 3)); // true
    }
}


삼항 연산자

-> 조건 연산자라고도 볼 수 있다. 어떤 조건을 만족하면 이 값을
넣고 그 조건을 만족하지 않으면 저 값을 넣는 식으로 처리된다.

연습문제

package chap_02;

public class _05_Operator5 {
    public static void main(String[] args) {
        // 삼항 연산자
        // 결과 = (조건) ? (참의 경우 결과값) : (거짓의 경우 결과값)
        int x = 3;
        int y = 5;
        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); // 달라요
    }
}


Quiz

Q. 어린이 키에 따른 놀이 기구 탑승 가능 여부를 확인하는 프로그램을 작성하시요

조건

  • 키가 120cm 이상인 경우에만 탑승 가능
  • 삼항 연산자 이용

실행결과


profile
gy’s portfolio

0개의 댓글