본문 바로가기
Java

연산자

by 코낄2 2024. 6. 5.

1. 산술 연산자

  • 일반 연산
// 연산 : 답이 정수로 나옴. 따라서 소수점이 버려집니다.
% 연산 : 나머지를 구하는 연산자. 나머지가 출력됩니다.
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 괄호 우선 연산

 

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

 

  • 증감 연산
전위 연산자: 증감을 먼저 진행하고, 증감된 값을 반환합니다. ( ++var , --var )
후위 연산자: 현재 값을 먼저 반환한 후, 증감을 실행합니다. ( var++, var-- )
 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 이 문장이 실행 된 후에 1이 더해짐
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++ );
System.out.println("대기 인원 : " + waiting++ );
System.out.println("대기 인원 : " + waiting++ );
System.out.println("총 대기 인원 : " + waiting); // 3명 앞에서 waiting++로 연산이 끝났기 때문에 3명
System.out.println("총 대기 인원 : " + --waiting); // 2명

2. 대입 연산자 / 복합 대입 연산자

=, +=, -=, *=, /=, %= 등 - 값을 변수에 대입.

// 복합 대입 연산자
int 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

3. 비교 연산자

<, >, <=, >= (크기 비교) > ==, != (동등성 비교)

// 비교 연산자
System.out.println(5 > 3); // 5 는 3 보다 크다. true
System.out.println(5 >= 3 ); // 5 는 3 보다 크거나 같다. true
System.out.println(5 <= 5); // 5 는 5 보다 작거나 같다. true
System.out.println(3 >= 5); // 3 은 5 보다 크거나 같다. false
System.out.println(5 == 5); // 5 는 5와 같다. true
System.out.println(5 == 3); // 5 는 3과 같다. false
System.out.println(5 != 3); // 5 는 3과 같지 않다. true
true
true
true
false
true
false
true

4. 논리 연산자

&& (논리 AND) > || (논리 OR)

// 논리 연산자
boolean 김치찌개 = true;
boolean 계란말이 = false;
boolean 제육볶음 = true;

System.out.println(김치찌개 || 계란말이 || 제육볶음); // || 'or' 의 의미. 하나라도 true 이면 true.
System.out.println(김치찌개 && 계란말이 && 제육볶음); // && 'and' 의 의미. 모두 true 이면 true.

// And 연산
System.out.println((5 > 3) && (3 > 1)); // true
// System.out.println(1 < 3 < 5); 한번에 두번 비교는 불가.
System.out.println((5 > 3) && (3 < 1)); // false

// Or 연산
System.out.println((5 > 3) || (3 > 1)); // true
System.out.println((5 > 3) || (3 < 1)); // true
System.out.println((5 < 3) || (3 < 1)); // false

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

5. 삼항 연산자

? : (조건 연산자) - 조건에 따라 다른 값을 반환.

// 삼항 연산자
// 결과 = (조건) ? (참의 경우 결과값) : (거짓의 경우 결과값)
int x = 5 ;
int y = 3 ;
int max = (x > y) ? x : y;
System.out.println(max);

int min = (x < y) ? x : y;
System.out.println(min);

boolean b = (x == y) ? true : false;
System.out.println(b);

String s = (x != y) ? "달라요" : "같아요";
System.out.println(s);
5
3
false
달라요
public class _Quiz_02 {
    public static void main(String[] args) {
        int height;
        int limit = 120;
        height = 110;

        String isPossible = (height >= limit) ? "가능합니다" : "불가능합니다";

        System.out.println("키가 " + height + "cm 이므로 탑승 " + isPossible);
    }
}
키가 110cm 이므로 탑승 불가능합니다

'Java' 카테고리의 다른 글

반복문  (0) 2024.06.17
조건문  (0) 2024.06.09
String  (1) 2024.06.05
출력,자료형,형변환  (0) 2024.06.01
윈도우에서 JDK / IDE 설치  (0) 2024.05.31