2.3 연산자와 표현식 – 산술, 대입, 비교, 논리 연산자 및 삼항 연산자 사용법
"자바 연산자는 단순한 기호가 아닙니다. 코드의 흐름과 논리를 결정하는 핵심 도구죠. 여러분은 그 진짜 의미를 제대로 알고 계신가요?"
안녕하세요, 여러분 😊 오늘은 자바 기본 문법에서 아주 중요한 파트인 연산자와 표현식에 대해 함께 배워볼 시간이에요! 숫자 계산뿐 아니라 조건 판단, 변수 값 변경, 논리 흐름 제어까지... 프로그래밍의 거의 모든 흐름은 연산자로 이루어진다고 해도 과언이 아니죠. 이번 포스팅에서는 산술 연산자부터 삼항 연산자까지 꼭 알아야 할 자바 연산자들의 사용법을 초보자 시선에서 차근차근 설명해 드릴게요. 실습 예제도 함께 보면서 하나씩 익혀보면 훨씬 쉬워질 거예요. 그럼 바로 시작해볼까요?
목차
1. 산술 연산자 ✏️
산술 연산자는 숫자를 다룰 때 가장 기본이 되는 연산자입니다. 더하기(+), 빼기(-), 곱하기(*), 나누기(/), 나머지(%)와 같이 수학 시간에 배웠던 사칙연산 개념이 그대로 적용돼요. 자바에서는 정수, 실수에 상관없이 이 연산자들을 자유롭게 사용할 수 있어요.
📌 산술 연산자 종류
연산자 | 기능 | 예시 |
---|---|---|
+ | 더하기 | 3 + 5 → 8 |
- | 빼기 | 10 - 4 → 6 |
* | 곱하기 | 6 * 2 → 12 |
/ | 나누기 | 10 / 2 → 5 |
% | 나머지 | 7 % 3 → 1 |
🧪 간단한 실습 예제
int a = 10;
int b = 3;
System.out.println("a + b = " + (a + b));
System.out.println("a - b = " + (a - b));
System.out.println("a * b = " + (a * b));
System.out.println("a / b = " + (a / b));
System.out.println("a % b = " + (a % b));
위 예제를 실행해 보면 각각의 연산 결과를 콘솔에 출력할 수 있어요. 특히 정수형 나눗셈은 결과가 소수가 아닌 정수로 나온다는 점, 그리고 나머지 연산자는 '짝수/홀수 판단' 같은 곳에서 자주 사용된다는 점을 꼭 기억하세요!
- Tip: 나머지 연산자(%)는 짝수인지 홀수인지 판단할 때 유용하게 쓰여요.
- 실수형 연산에서는
int
대신double
타입을 사용해야 더 정확한 결과를 얻을 수 있어요.
산술 연산자는 우리가 코딩을 하면서 제일 자주 만나게 되는 친구입니다. 친숙해지면 생각보다 금방 손에 익게 돼요. 다양한 숫자 조합으로 직접 실습해보는 것도 큰 도움이 되겠죠?
2. 대입 연산자와 복합 대입 🔄
변수에 값을 넣어주는 대입 연산자는 프로그래밍에서 가장 기본적이면서도 자주 쓰이는 연산입니다. 단순히 =
기호 하나지만, 그 의미는 '같다'가 아니라 오른쪽 값을 왼쪽 변수에 넣는다라는 뜻이에요. 여기에 산술 연산자를 조합한 복합 대입 연산자를 사용하면 코드가 훨씬 짧고 간결해진답니다.
📌 기본 대입 및 복합 대입 연산자 종류
연산자 | 설명 | 예시 |
---|---|---|
= | 우변 값을 좌변 변수에 대입 | x = 10; |
+= | 덧셈 후 대입 | x += 5; // x = x + 5 |
-= | 뺄셈 후 대입 | x -= 3; // x = x - 3 |
*= | 곱셈 후 대입 | x *= 2; // x = x * 2 |
/= | 나눗셈 후 대입 | x /= 2; // x = x / 2 |
%= | 나머지 후 대입 | x %= 3; // x = x % 3 |
🧪 예제로 이해하기
int x = 10;
x += 5; // x = 15
x -= 3; // x = 12
x *= 2; // x = 24
x /= 4; // x = 6
x %= 4; // x = 2
System.out.println("최종 값: " + x);
이처럼 복합 대입 연산자를 사용하면 가독성이 좋아지고 코드도 간결해지죠. 반복적으로 사용하는 연산에는 매우 유용하답니다!
- 주의: 대입 연산자에서 =는 '같다'가 아니라 '할당한다'라는 의미예요!
복합 대입 연산자는 초보자들이 자바 문법에 익숙해지는 데 아주 좋은 연습 대상이에요. 조금만 익숙해지면, 반복문에서도 정말 편하게 사용할 수 있게 된답니다 😊
3. 비교 연산자 📊
조건을 검사할 때 빠질 수 없는 도구가 바로 비교 연산자입니다. 숫자나 값이 서로 같은지, 큰지, 작은지를 판단해서 true
또는 false
를 반환해요. 이 결과는 조건문(if, while 등)과 함께 사용되며, 프로그램의 흐름을 결정하는 핵심 역할을 합니다.
📌 비교 연산자 종류
연산자 | 기능 | 예시 |
---|---|---|
== | 같은 값인지 비교 | 5 == 5 → true |
!= | 같지 않은지 비교 | 4 != 3 → true |
> | 왼쪽이 더 큰가 | 7 > 5 → true |
< | 왼쪽이 더 작은가 | 3 < 6 → true |
>= | 크거나 같은가 | 5 >= 5 → true |
<= | 작거나 같은가 | 4 <= 5 → true |
🧪 조건문과 함께 사용해 보기
int age = 20;
if (age >= 18) {
System.out.println("성인입니다.");
} else {
System.out.println("미성년자입니다.");
}
비교 연산자 결과는 항상 true
또는 false
로 반환되며, 조건문에서 이 값에 따라 코드의 흐름이 달라집니다.
- Tip:
==
는 값이 같은지를 비교하지만, 문자열 비교에는equals()
를 사용해야 해요!
비교 연산자를 자유자재로 다룰 수 있다면, 조건문과 반복문까지 훨씬 쉽게 활용할 수 있어요. 다양한 숫자와 조건으로 실습해보는 걸 추천드려요 😊
4. 논리 연산자 ✅❌
논리 연산자는 여러 조건을 AND(&&), OR(||), NOT(!)으로 결합하거나 부정할 때 사용하는 연산자입니다. 단일 조건을 넘어서 복잡한 조건식을 만들 때 필수적으로 사용돼요. 조건문과 함께 자주 쓰이며, 연산 결과는 항상 true
또는 false
입니다.
📌 논리 연산자 종류
연산자 | 기능 | 예시 |
---|---|---|
&& | AND: 모두 참일 때만 true | (x > 0) && (x < 10) |
|| | OR: 하나라도 참이면 true | (x < 0) || (x > 100) |
! | NOT: true → false, false → true | !(x == 0) |
🧪 논리 연산자 실습 예제
int age = 25;
boolean hasID = true;
if (age >= 20 && hasID) {
System.out.println("입장 가능합니다.");
}
if (age < 18 || !hasID) {
System.out.println("입장 불가입니다.");
}
위 예제에서 AND 조건은 둘 다 참일 때만 동작하고, OR 조건은 하나만 참이어도 참이 되며, NOT은 조건을 부정하는 역할을 해요.
- Tip: 복잡한 조건식은 괄호
()
를 사용해서 우선순위를 명확히 해주세요!
논리 연산자는 if문, while문과 정말 자주 사용되기 때문에 반드시 익숙해져야 해요. 직접 조건을 바꿔보면서 다양한 결과를 실습해보는 걸 추천드려요 💡
5. 삼항 연산자 (조건 연산자) 🎯
삼항 연산자는 조건문을 한 줄로 간결하게 표현할 수 있는 유용한 연산자입니다. 형식은 아래와 같이 간단한 구조를 가지며, 복잡한 조건 없이도 짧은 분기 처리에 자주 활용됩니다.
조건식 ? 참일 때의 값 : 거짓일 때의 값;
🧪 간단한 삼항 연산자 예제
int score = 85;
String result = (score >= 80) ? "합격" : "불합격";
System.out.println("결과: " + result);
위 예제에서는 점수가 80 이상이면 "합격", 아니면 "불합격"이라는 문자열을 출력합니다. if-else 문을 간단하게 대체할 수 있는 멋진 표현이죠!
🧩 삼항 연산자 실전 예시
int num = 7;
String type = (num % 2 == 0) ? "짝수" : "홀수";
System.out.println("이 숫자는 " + type + "입니다.");
삼항 연산자는 코드를 짧고 깔끔하게 만들고 싶을 때 정말 유용합니다. 단, 너무 많은 조건을 삼항 연산자 하나에 몰아넣으면 오히려 가독성이 떨어질 수 있으니 간단한 조건에서만 사용하는 게 좋아요.
- Tip: 삼항 연산자는 return 문 안에서도 자주 사용돼요. 예:
return (x > 0) ? x : -x;
삼항 연산자는 초보자에게 꼭 추천하는 표현 방식이에요. if문만 쓰던 코드가 한 줄로 정리되면 뭔가 뿌듯하거든요 😎
6. 연산자 우선순위와 표현식의 흐름 🔁
자바에서 여러 개의 연산자가 한 줄에 함께 등장할 경우, 어떤 연산이 먼저 수행될까요? 바로 이때 연산자 우선순위가 중요한 역할을 해요. 우선순위가 높은 연산자부터 먼저 계산되고, 우선순위가 같다면 연산 방향(왼쪽 → 오른쪽)에 따라 처리됩니다.
📌 주요 연산자 우선순위 (상위 순)
우선순위 | 연산자 종류 | 예시 |
---|---|---|
1 | 괄호 () | (a + b) |
2 | 단항 연산자 +, -, ! | -x, !flag |
3 | 산술 연산자 *, /, % | a * b |
4 | 산술 연산자 +, - | a + b |
5 | 비교 연산자 >, <, == | x == y |
6 | 논리 연산자 &&, || | a && b |
7 | 삼항 연산자 ? : | 조건 ? 참 : 거짓 |
8 | 대입 연산자 =, +=, -= | x = 5 |
🧪 우선순위에 따른 연산 흐름 예제
int result = 10 + 2 * 3;
System.out.println("결과: " + result); // 출력값은 16
위 예제에서 덧셈보다 곱셈이 먼저 수행되기 때문에 2 * 3 = 6
이 계산되고, 그 결과에 10을 더해 16
이 출력되는 거예요.
- Tip: 우선순위가 헷갈릴 땐
()
로 명확히 지정해주는 습관이 좋아요!
표현식을 분석하고 계산하는 능력은 코딩 실력을 키우는 데 정말 중요한 포인트예요. 눈으로 계산 순서를 따라가며 직접 예제를 실습해 보세요 🔍
마무리 ✨
지금까지 자바에서 사용되는 다양한 연산자들을 하나하나 살펴보면서 산술, 대입, 비교, 논리, 삼항 연산자와 연산자 우선순위에 대해 학습해봤어요. 처음엔 단순한 기호처럼 보이지만, 실제 프로그래밍에서는 코드의 흐름을 결정짓는 중요한 요소들이라는 걸 느끼셨을 거예요.
연산자는 단순히 외워서 끝낼 게 아니라 직접 손으로 코드에 적용해보면서 감각적으로 익히는 것이 훨씬 중요해요. 연산자들을 조합해 다양한 표현식을 만들고, 직접 실행 결과를 확인해보는 과정을 반복하다 보면 어느새 여러분도 자연스럽게 익숙해질 거예요 😊
다음 챕터에서는 조건문과 반복문을 활용해 더 유용한 프로그램 흐름 제어를 배워볼 예정이에요. 기대해주세요!
'JAVA' 카테고리의 다른 글
[FirstJava] 2.5 키보드 입력과 Scanner 사용 – 표준 입력을 통해 값 읽어오기, Scanner 클래스 활용 (1) | 2025.05.27 |
---|---|
[FirstJava] 2.4 연산자 우선순위 개념과 괄호를 통한 제어 (1) | 2025.05.26 |
[FirstJava] 2.2 리터럴과 형 변환 – 정수/실수/문자 리터럴, 자료형 간의 묵시적/명시적 형 변환 (1) | 2025.05.22 |
[FirstJava] 2.1 자바 기본 문법과 자료형: 변수와 자료형의 모든 것 (2) | 2025.05.21 |
[FirstJava] 1.6 실습: Hello World 프로그램 실행 – 작성한 프로그램을 컴파일하고 실행하여 동작 확인 (1) | 2025.05.20 |