[Java] 연산자

손주현·2025년 4월 4일

Java 기초

목록 보기
3/13
post-thumbnail

연산자

변수나 값에 대해 계산, 비교, 논리 연산 등을 수행하는 기호다.

  • 연산자 종류
종류설명예시
산술 연산자기본 사칙연산, 나머지+, -, *, /, %
증감 연산자1씩 증가/감소++, --
비교 연산자두 값을 비교==, !=, >, <, >=, <=
논리 연산자논리값 비교 (AND, OR, NOT)&&, ||, !
대입 연산자값을 변수에 저장=, +=, -=, *=, /=, %=
삼항 연산자조건 ? 참 : 거짓condition ? a : b

산술 연산자

int a = 5;
int b = 2;

System.out.println(a + b); // 7
System.out.println(a - b); // 3
System.out.println(a * b); // 10
System.out.println(a / b); // 2 (정수 나눗셈 결과)
System.out.println(a % b); // 1 (나머지 연산)

int끼리 나누면 소수점이 버려짐 (예: 5 / 22)


문자열 더하기

  • 자바는 문자열에도 + 연산자를 사용할 수 있다.
String result1 = "hello " + "world"; // "hello world"
String result2 = "a + b = " + 10;     // "a + b = 10"

숫자와 문자열을 더하면 숫자가 문자열로 변환된다.
자바는 문자열인 String 타입에 다른 타입을 더하는 경우 대상 타입을 문자열로 변경한다.
쉽게 이야기해서 문자열에 더하는 것은 다 문자열이 된다


증감 연산자

int a = 1;

++a; // a = 2
a++; // a = 3

System.out.println(a); // 3
  • ++a: 전위 증가 → 먼저 증가하고 대입
  • a++: 후위 증가 → 먼저 대입하고 나중에 증가
int a = 1;
int b = ++a; // a = 2, b = 2

int c = 1;
int d = c++; // c = 2, d = 1

비교 연산자

int a = 2;
int b = 3;

System.out.println(a == b);  // false
System.out.println(a != b);  // true
System.out.println(a < b);   // true
System.out.println(a >= b);  // false
  • 문자열 비교는 ==이 아닌 .equals()를 사용해야 한다.
String s1 = "hello";
String s2 = "hello";

System.out.println(s1.equals(s2)); // true

논리 연산자

System.out.println(true && false); // false
System.out.println(true || false); // true
System.out.println(!true);         // false
int a = 15;
boolean result = (a > 10) && (a < 20); // true

&&: 둘 다 true여야 true
||: 하나라도 true면 true
!: 반대값 반환


대입 연산자

int a = 5;

a += 3;  // 8
a -= 2;  // 6
a *= 4;  // 24
a /= 3;  // 8
a %= 5;  // 3

복합 대입 연산자는 a = a + 3a += 3처럼 간결하게 표현 가능.


연산자 우선순위

우선순위연산자설명
1()괄호, 가장 먼저 계산됨
2++, --, !, ~, +, - (단항)단항 연산자 (전위형)
3*, /, %곱셈, 나눗셈, 나머지
4+, -덧셈, 뺄셈
5<<, >>, >>>비트 이동
6<, <=, >, >=, instanceof비교 연산자
7==, !=등가 비교
8&비트 AND
9^비트 XOR
10|비트 OR
11&&논리 AND
12||논리 OR
13? :삼항 연산자
14=, +=, -=, *=, /=, %=대입 연산자
profile
Clarinetist.dev

0개의 댓글