본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
자바의 조리도구와 네비게이션: 연산자와 조건문 마스터하기! 🍳🧭

안녕하세요! 자바 레벨업에 열심인 여러분! 또 오셨군요! 👋
지난 시간에는 데이터를 담는 상자(변수, 상수)와 그 내용물의 종류(자료형)에 대해 알아봤죠? 📦🏷️
마치 요리를 위한 신선한 재료 준비와 같았다고 할 수 있겠네요! 다들 잘 보관하고 계시죠? 😊
오늘은 그 재료들을 가지고 실제로 무언가를 만들고, 상황에 따라 다른 행동을 하도록 '지시'하는 방법을 배울 차례입니다! 바로 연산자(Operator) 와 조건문(Conditional Statement) 인데요, 요리의 도구🔪🧂와 레시피📖, 그리고 갈림길에서의 똑똑한 선택🧭과 같다고 생각하시면 이해가 쉬울 거예요.
데이터를 다루는 기술을 배웠으니, 이제 그 데이터를 활용해 더 똑똑한 프로그램을 만들어 볼까요? 🔥

1. 자바의 만능 도구 상자: 연산자(Operator) 🛠️
연산자는 변수와 값들을 가지고 덧셈, 뺄셈 같은 계산을 하거나, 값들을 비교하는 등 다양한 '작업'을 수행하는 특별한 기호들이에요. 마치 요리할 때 쓰는 칼, 믹서기, 저울 같은 도구들이죠!
주요 연산자들을 살펴볼까요?
- 산술 연산자 (Arithmetic Operators): 수학 시간처럼 더하고, 빼고, 곱하고, 나누는 연산을 합니다.
- + (더하기), - (빼기), * (곱하기), / (나누기), % (나머지)
int a = 10; int b = 5; int sum = a + b; // sum은 15 int difference = a - b; // difference는 5 int product = a * b; // product는 50 int quotient = a / b; // quotient는 2 int remainder = a % b; // remainder는 0 (10 나누기 5의 나머지) System.out.println("합계: " + sum); - 대입 연산자 (Assignment Operators): 변수에 값을 '넣어주는' 역할을 해요. = 가 기본이고, 다른 연산과 결합해서 축약형으로도 많이 쓰여요.
- = (대입), += (더해서 대입), -= (빼서 대입), *= (곱해서 대입), /= (나눠서 대입), %= (나머지를 대입)
int score = 80; score += 10; // score = score + 10; 과 동일. score는 이제 90 System.out.println("최종 점수: " + score); - 비교 연산자 (Comparison Operators): 두 값을 비교해서 그 결과가 '맞다'(true) 또는 '틀리다'(false)인지 알려줘요. 조건문에서 아주 중요하게 쓰이죠!
- == (같다), != (다르다), > (크다), < (작다), >= (크거나 같다), <= (작거나 같다)
int age = 20; boolean isAdult = age >= 19; // isAdult는 true (20은 19보다 크거나 같으므로) boolean isSame = (age == 20); // isSame은 true System.out.println("성인인가요? " + isAdult); - 논리 연산자 (Logical Operators): 여러 개의 조건을 조합할 때 사용해요. '그리고'(AND), '또는'(OR), '아니다'(NOT)의 의미를 가집니다.
- && (AND): 두 조건이 모두 true일 때만 true
- || (OR): 두 조건 중 하나라도 true이면 true
- ! (NOT): 결과(true/false)를 반대로 뒤집음
int math = 85; int english = 90; boolean passed = (math >= 80) && (english >= 80); // 두 과목 모두 80점 이상이어야 합격 (true) boolean extraActivity = (math > 95) || (english > 95); // 둘 중 하나라도 95점 넘으면 특별활동 대상 (false) boolean isNotPassed = !passed; // 합격하지 않았는가? (false) System.out.println("합격 여부: " + passed); - 증감 연산자 (Increment/Decrement Operators): 변수의 값을 1씩 증가시키거나 감소시키는 편리한 방법이에요.
- ++ (1 증가), -- (1 감소)
(Tip: ++나 --가 변수 앞에 붙는지 뒤에 붙는지에 따라 값이 적용되는 시점이 약간 다른데, 이건 나중에 더 자세히 알아봐도 괜찮아요!)int count = 5; count++; // count는 이제 6 System.out.println("카운트: " + count); count--; // count는 다시 5 System.out.println("카운트: " + count);
2. 똑똑한 네비게이션: 조건문 (if, else if, else) 🧭
프로그램을 만들다 보면 특정 '조건'에 따라 다른 행동을 해야 할 때가 많아요. "만약 날씨가 맑으면 소풍을 가고, 그렇지 않으면 집에서 영화를 본다" 처럼요. 자바에서는 if 문을 사용해 이런 '조건에 따른 흐름 제어'를 할 수 있습니다. 마치 갈림길에서 어떤 길로 갈지 알려주는 이정표 같아요!

- if 문: 가장 기본적인 조건문. 괄호 () 안의 조건이 true일 경우에만 {} 안의 코드가 실행됩니다.
int temperature = 30; if (temperature > 25) { System.out.println("날씨가 덥네요! 아이스크림 드세요! 🍦"); } - if-else 문: 조건이 true일 때 실행할 코드와, false일 때 실행할 코드를 모두 지정하고 싶을 때 사용합니다. 둘 중 하나는 반드시 실행돼요.
-
int hour = 14; // 오후 2시 if (hour < 12) { System.out.println("오전입니다. 좋은 아침!"); } else { System.out.println("오후입니다. 힘내세요!"); } - if-else if-else 문: 여러 개의 조건을 순서대로 체크하고 싶을 때 사용합니다. 첫 번째 if 조건부터 확인하고, true인 조건을 만나면 해당 코드 블록을 실행하고 전체 if-else if-else 구조를 빠져나옵니다. 모든 조건이 false이면 마지막 else 블록이 실행됩니다. (마지막 else는 생략 가능해요)
-
int score = 75; if (score >= 90) { System.out.println("학점: A"); } else if (score >= 80) { System.out.println("학점: B"); } else if (score >= 70) { System.out.println("학점: C"); // score가 75이므로 여기서 true! 이 블록 실행 후 종료. } else { System.out.println("학점: D"); }
3. 깔끔한 선택지: switch 문 🚦
if-else if-else 문이 길어질 때, 특정 변수의 '값'에 따라 여러 경우를 처리해야 한다면 switch 문이 더 깔끔하고 가독성이 좋을 수 있어요. 마치 자판기에서 원하는 음료수 버튼을 누르는 것과 비슷하죠!
int choice = 2;
String beverage;
switch (choice) {
case 1:
beverage = "콜라";
break; // 중요! 해당 case 실행 후 switch 문을 빠져나가라는 의미
case 2:
beverage = "사이다"; // choice가 2이므로 여기가 실행됨
break;
case 3:
beverage = "환타";
break;
default: // 위의 어떤 case에도 해당하지 않을 때 실행됨
beverage = "물";
break;
}
System.out.println("선택한 음료: " + beverage); // 결과: 선택한 음료: 사이다
switch 문에서는 각 case 끝에 break;를 넣어주는 것이 중요해요! 그렇지 않으면 다음 case의 코드까지 연달아 실행될 수 있거든요 (특별한 의도가 아니라면 실수하기 쉬워요!). default는 선택 사항이지만, 예상치 못한 값에 대한 처리를 위해 넣어주는 것이 좋습니다.

4. 정리하며 📝
와~ 오늘은 자바 코드가 스스로 계산하고, 비교하고, 상황에 따라 다른 길을 선택하게 만드는 강력한 도구들! 연산자와 조건문에 대해 알아봤습니다! 🤓
- 연산자(Operator): 데이터를 가공하고 비교하는 만능 도구 🛠️ (산술, 대입, 비교, 논리, 증감)
- 조건문(Conditional Statement): if, else if, else를 사용하여 조건에 따라 코드 실행 흐름을 제어하는 네비게이션 🧭
- switch 문: 특정 값에 따른 여러 선택지를 깔끔하게 처리하는 방법 🚦
이제 변수에 담긴 데이터를 가지고 다양한 연산을 수행하고, 조건에 따라 프로그램이 다르게 동작하도록 만들 수 있게 되었어요! 점점 더 동적인 프로그램을 만들 수 있게 된 것 같아 뿌듯하지 않나요? 😊
벌써 한 주의 절반인 수요일이 훌쩍 지나갔네요! 오늘 배운 내용들, 특히 연산자 종류와 조건문 구조를 잘 복습해 보시고, 남은 한 주도 즐겁게 코딩하면서 힘차게 달려봅시다! 💪 포기하지 않고 꾸준히 하는 것이 중요해요!
다음 시간에는 또 어떤 흥미로운 자바의 세계가 기다리고 있을지 기대하며, 오늘은 이만 물러갈게요! 다음에 또 만나요! 👋
'데이터 엔지니어링' 카테고리의 다른 글
| 패스트캠퍼스 환급챌린지 25일차: 데이터엔지니어링 초격차 강의 후기 (2) | 2025.04.25 |
|---|---|
| 패스트캠퍼스 환급챌린지 24일차: 데이터엔지니어링 초격차 강의 후기 (1) | 2025.04.24 |
| 패스트캠퍼스 환급챌린지 22일차: 데이터엔지니어링 초격차 강의 후기 (0) | 2025.04.22 |
| 패스트캠퍼스 환급챌린지 21일차: 데이터엔지니어링 초격차 강의 후기 (1) | 2025.04.21 |
| 패스트캠퍼스 환급챌린지 20일차: 데이터엔지니어링 초격차 강의 후기 (0) | 2025.04.20 |