자바 - 기본 연산자

미래의 자바 프로그래머 여러분, 환영합니다! 오늘은 자바 연산자의 흥미로운 세계에 뛰어들어보겠습니다. 아직 코드를 한 줄도 작성하지 않았다고 해도 걱정하지 마세요 – 저희는 맨 처음부터 시작하여 점진적으로 공부하겠습니다. 이 수업이 끝나면 여러분은 데이터를 전문가처럼 조작할 수 있을 것입니다!

Java - Basic Operators

연산자란 무엇인가요?

저희가 뛰어들기 전에, 연산자가 무엇인지 이해해보겠습니다. 프로그래밍에서 연산자는 컴퓨터가 특정한 수학적이거나 논리적인 조작을 수행하도록 지시하는 특수한 기호입니다. 이를 문장의 동사와 비유해보면 – 이들은 작업을 수행하는 것들입니다!

자바 산술 연산자

저희는 가장 익숙한 연산자부터 시작해보겠습니다 – 산술 연산자입니다. 이 연산자들은 여러분이 초등학교 때부터 사용하고 있었던 것들입니다!

덧셈 (+)

int apples = 5;
int oranges = 3;
int totalFruit = apples + oranges;
System.out.println("Total fruit: " + totalFruit);

이 코드는 다음과 같은 출력을 합니다: Total fruit: 8

여기서 우리는 + 연산자를 사용하여 사과와 오렌지를 더합니다. (보시죠? 프로그래밍에서 우리는 사과와 오렌지를 더할 수 있습니다!)

뺄셈 (-)

int startingMoney = 100;
int spentMoney = 25;
int remainingMoney = startingMoney - spentMoney;
System.out.println("Money left: $" + remainingMoney);

출력: Money left: $75

- 연산자는 하나의 값에서 다른 값을 뺍니다.

곱셈 (*)

int widgetPrice = 5;
int widgetQuantity = 7;
int totalCost = widgetPrice * widgetQuantity;
System.out.println("Total cost: $" + totalCost);

출력: Total cost: $35

* 연산자는 두 값을 곱합니다.

나눗셈 (/)

int pizzaSlices = 8;
int people = 3;
int slicesPerPerson = pizzaSlices / people;
System.out.println("Slices per person: " + slicesPerPerson);

출력: Slices per person: 2

/ 연산자는 하나의 값을 다른 값으로 나눕니다. 자바에서 정수를 나눌 때는 가장 가까운 정수로 내림차순으로 처리함에 주의하세요.

나머지 (%)

int cookiesLeft = 10;
int peopleWantingCookies = 3;
int leftoverCookies = cookiesLeft % peopleWantingCookies;
System.out.println("Cookies left over: " + leftoverCookies);

출력: Cookies left over: 1

% 연산자는 나눗셈 후 남는 나머지를 제공합니다. 이는 숫자가 짝수인지 홀수인지 결정하거나, 값을 주기적으로 순환시키는 데 매우 유용합니다.

자바 관계 연산자

관계 연산자는 두 값을 비교하고 논리적 결과를 반환합니다 (true 또는 false). 이는 코드에서 결정을 내리는 데 필수적입니다.

동등한지 (==)

int age = 18;
boolean canVote = (age == 18);
System.out.println("Can this person vote? " + canVote);

출력: Can this person vote? true

== 연산자는 두 값이 동등한지 확인합니다.

동등하지 않은지 (!=)

String weather = "sunny";
boolean stayInside = (weather != "sunny");
System.out.println("Should I stay inside? " + stayInside);

출력: Should I stay inside? false

!= 연산자는 두 값이 동등하지 않은지 확인합니다.

더 큰지 (>)와 더 작은지 (<)

int playerScore = 85;
int highScore = 90;
boolean newHighScore = (playerScore > highScore);
System.out.println("New high score achieved: " + newHighScore);

출력: New high score achieved: false

> 연산자는 왼쪽 값이 오른쪽보다 큰지 확인하고, <는 반대입니다.

더 크거나 동등한지 (>=)와 더 작거나 동등한지 (<=)

int requiredAge = 18;
int personAge = 18;
boolean canEnter = (personAge >= requiredAge);
System.out.println("Can the person enter? " + canEnter);

출력: Can the person enter? true

이 연산자들은 값이 다른 값보다 크거나 작거나 동등한지 확인합니다.

자바 논리 연산자

논리 연산자는 여러 조건을 결합할 수 있게 합니다.

AND (&&)

boolean hasTicket = true;
boolean hasID = true;
boolean canAttendConcert = hasTicket && hasID;
System.out.println("Can attend the concert: " + canAttendConcert);

출력: Can attend the concert: true

&& 연산자는 두 조건이 모두 true일 때만 true를 반환합니다.

OR (||)

boolean isWeekend = true;
boolean isHoliday = false;
boolean canSleepIn = isWeekend || isHoliday;
System.out.println("Can sleep in: " + canSleepIn);

출력: Can sleep in: true

|| 연산자는 적어도 하나의 조건이 true일 때 true를 반환합니다.

NOT (!)

boolean isRaining = false;
boolean shouldTakeUmbrella = !isRaining;
System.out.println("Should take umbrella: " + shouldTakeUmbrella);

출력: Should take umbrella: true

! 연산자는 논리 값을 반전합니다.

대입 연산자

저희는 예제에서 기본 대입 연산자 =를 사용해왔습니다. 하지만 자바는 대입을 결합한 다른 연산을 수행하는 접두사 연산자가 있습니다.

덧셈 대입 (+=)

int score = 0;
score += 10; // 이는 다음과 동일합니다: score = score + 10;
System.out.println("Current score: " + score);

출력: Current score: 10

다른 대입 연산자

자바는 -=, *=, /=, %= 등이 비슷하게 작동합니다.

자바 연산자 우선순위 및 결합성

수학과 마찬가지로 자바 연산자는 우선순위가 있습니다. 예를 들어:

int result = 5 + 3 * 2;
System.out.println("Result: " + result);

출력: Result: 11

곱셈이 덧셈보다 먼저 일어나는 것은 수학에서도 마찬가지입니다.

다음은 연산자 우선순위의 간단한 표입니다 (높은 우선순위부터 낮은 우선순위 순):

우선순위 연산자
1 * / %
2 + -
3 < > <= >=
4 == !=
5 &&
6
7 =

기억하십시오, 여러분은 언제든지 괄호를 사용하여 연산의 순서를 명시적으로 지정할 수 있습니다:

int result = (5 + 3) * 2;
System.out.println("Result with parentheses: " + result);

출력: Result with parentheses: 16

이렇게 저희는 자바 연산자의 세계에 첫 걸음을 내딛었습니다. 이 작은 기호들은 여러분이 자바로 만들 수 있는 놀라운 일들의 블록입니다. 계속 연습하시고, 곧 이 연산자들을 결합하여 복잡한 문제를 해결하고 재미있는 프로그램을 만들 수 있을 것입니다. 코딩을 즐겨세요!

Credits: Image by storyset