본문 바로가기

IT 개발/JAVA

[Java기초] Java 연산자와 표현식 이해하기

Java 프로그래밍은 프로그램의 수행을 위한 다양한 연산자와 표현식을 활용합니다.

이 글에서는 Java에서 사용되는 연산자와 표현식에 대해 초보자를 위한 가이드로 알아보겠습니다. 이 글을 통해 프로그래밍 초기 단계에서 연산자와 표현식의 이해와 활용을 높일 수 있길 바랍니다.

 

1. Java 연산자란?

Java 연산자는 주어진 값에 대하여 연산을 수행하고 결과를 반환하는 기호입니다. 연산자는 값, 변수, 리터럴 등과 결합하여 표현식을 구성하며, 연산자의 종류에 따라 적용되는 연산 및 규칙이 다릅니다. Java에서 사용되는 연산자는 다음과 같이 여러 종류로 나뉩니다.

 

1-1. 산술 연산자

산술 연산자는 흔히 알고 있는 사칙연산 및 나머지 연산을 수행하는 연산자입니다. 주로 수치형 데이터를 다룰 때 사용됩니다.

- 더하기(+)

- 빼기(-)

- 곱하기(*)

- 나누기(/)

- 나머지(%)

 

예시)

int a = 10;
int b = 20;

System.out.println("덧셈: " + (a + b));
System.out.println("뺄셈: " + (a - b));
System.out.println("곱셈: " + (a * b));
System.out.println("나눗셈: " + ((double) a / b));
System.out.println("나머지: " + (a % b));

 

1-2. 관계 연산자

관계 연산자는 두 값의 대소 관계를 비교하며 결과는 참(true) 또는 거짓(false)의 논리형 데이터로 반환됩니다.

예시)

int x = 10;
int y = 20;

System.out.println("x<y: " + (x < y)); // x가 y보다 작다
System.out.println("x<=y: " + (x <= y)); // x가 y보다 같거나 작다
System.out.println("x>y: " + (x > y)); // x가 y보다 크다
System.out.println("x>=y: " + (x >= y)); // x가 y보다 같거나 크다
System.out.println("x==y: " + (x == y)); // x가 y와 같다
System.out.println("x!=y: " + (x != y)); // x가 y와 같지않다

 

1-3. 논리 연산자

논리 연산자는 주어진 조건문을 검사하여 참(true) 또는 거짓(false)을 반환합니다. 보통 복합 조건을 처리할 때 사용됩니다.

 

- 논리적 AND (&&)

- 논리적 OR (||)

예시)

int age = 25;

boolean isTeenager = (age >= 13) && (age <= 19);
boolean isAdult = (age >= 18) && (age < 65);
boolean isFreeRider = (age < 18) || (age >= 65);

System.out.println("Teenager? " + isTeenager);
System.out.println("Adult? " + isAdult);
System.out.println("Free rider? " + isFreeRider);

 

 

1-4. 비트 연산자

비트 연산자는 피연산자를 이진수로 나타낸 비트에 대해 연산을 수행합니다. 이 연산자들은 주로 하드웨어 제어에 사용되며, 다음과 같이 다양한 종류가 있습니다.

 

- 비트 AND(&)

- 비트 OR(|)

- 비트 XOR(^)

- 비트 NOT(~)

- 비트 이동(<<, >>, >>>)

 

예시)

int a = 10; // 이진수로 표현하면 1010
int b = 13; // 이진수로 표현하면 1101

System.out.println("비트 AND: " + (a & b));
System.out.println("비트 OR: " + (a | b));
System.out.println("비트 XOR: " + (a ^ b));
System.out.println("비트 NOT: " + (~a));
System.out.println("비트 이동(왼쪽): " + (a << 2));
System.out.println("비트 이동(오른쪽): " + (a >> 2));
System.out.println("비트 이동(부호 유지): " + (a >>> 2));

 

 

1-5. 증감 연산자

증감 연산자는 변수의 값을 1 증가시키거나 1 감소시킵니다. 단항 연산자로 사용됩니다.

 

- 증가 연산자(++)

- 감소 연산자(--)

 

예시)

int num = 10;

num++;
System.out.println("num: " + num);

num--;
System.out.println("num: " + num);

 

1-6. 할당 연산자

할당 연산자는 특정 변수에 값을 할당하거나, 연산의 결과를 변수에 할당하는데 사용됩니다.

 

- 기본 할당 연산자(=)

- 복합 할당 연산자(+=, -=, *=, /=, %=, <<=, >>=, >>>=, &=, |=, ^=)

 

예시)

int a = 10;
a += 5; // a = a + 5

 

 

1-7. 삼항 연산자

 

삼항 연산자는 if-else 문과 비슷한 조건 연산을 수행합니다. 주어진 조건문에 따라 결과를 반환합니다.

 

- 삼항 연산자(?:)

 

예시)

int a = 10;
int b = 20;

int max = (a > b) ? a : b;
System.out.println("최댓값: " + max);

 

 

1-8. 타입 비교 연산자

타입 비교 연산자는 객체가 특정 클래스 또는 인터페이스의 인스턴스인지 확인하는데 사용됩니다.

 

- 타입 비교 연산자(instanceof)

 

예시)

String s = "Hello";
boolean result = s instanceof String;
System.out.println("s는 String 객체? " + result);

 

이렇게 전체적인 연산자 종류에 대한 이해를 높이시길 바랍니다. Java 프로그래밍에 필요한 연산 처리를 유연하게 구현할 수 있을 것입니다.

 

2. 표현식

표현식은 연산자와 피연산자(값, 변수, 리터럴 등)가 결합된 코드 구조이며, 평가를 통해 하나의 값을 반환합니다.

예시)

int a = 10;
int b = 20;
int result = ((a * b) / 5) + 3;

System.out.println("Result: " + result);

 

Java 연산자와 표현식을 이해하는 것은 프로그래밍의 기본 작업을 수행하는 데 중요한 역할을 하므로, 개념을 이해하고 예시를 통해 연습하시기 바랍니다. 이를 통해 Java 프로젝트에서 필요한 연산 및 조건 처리를 능숙하게 수행할 수 있을 것입니다.