-
Java 초보자를 위한 연산자 총 정리 : 쉽고 간단하게 이해하기☕Java 2024. 12. 6. 23:56728x90
연산자란?
연산자는 프로그램에서 데이터를 처리하기 위해 사용하는 기호입니다. 예를 들어, 덧셈을 할 때 사용하는 '+' 기호가 연산자입니다.
주요 연산자 종류종류 설명 산술 연산자 +, -, *, /, % (덧셈, 뺄셈, 곱셈, 나눗셈, 나머지) 예: int result = 5 + 3; // result는 8 비교 연산자 ==, !=, <, >, <=, >= 예: boolean isEqual = (5 == 5); // isEqual은 true 논리 연산자 && (AND), || (OR), ! (NOT) 예: boolean result = (true && false); // result는 false 대입 연산자 =, +=, -=, *=, /= 예: int x = 5; x += 3; // x는 8 증감 연산자 ++, -- 예: int count = 0; count++; // count는 1 연산자 우선순위
수학에서처럼 자바에도 연산자 우선순위가 있습니다. 괄호 ()를 사용하면 우선순위를 변경할 수 있습니다.
주의사항
0으로 나누기는 오류를 발생시킵니다.
정수 나눗셈의 결과는 정수입니다. (예: 5 / 2 = 2)
산술 연산자
기호 설명 + (덧셈) 두 피연산자를 더합니다. - (뺄셈) 첫 번째 피연산자에서 두 번째 피연산자를 뺍니다. * (곱셈) 두 피연산자를 곱합니다. / (나눗셈) 첫 번째 피연산자를 두 번째 피연산자로 나눕니다. % (나머지) 첫 번째 피연산자를 두 번째 피연산자로 나눈 후의 나머지를 반환합니다. 산술 연산자 사용 시 주의할 점
정수 나눗셈에서는 결과가 정수로 반환되며, 소수점 이하는 버려집니다1.
0으로 나누기를 시도하면 오류가 발생합니다.
연산자 우선순위는 일반적인 수학 규칙을 따릅니다 (곱셈과 나눗셈이 덧셈과 뺄셈보다 우선)
예제
int a = 5; int b = 2; System.out.println("a + b = " + (a + b)); // 출력: a + b = 7 System.out.println("a - b = " + (a - b)); // 출력: a - b = 3 System.out.println("a * b = " + (a * b)); // 출력: a * b = 10 System.out.println("a / b = " + (a / b)); // 출력: a / b = 2 System.out.println("a % b = " + (a % b)); // 출력: a % b = 1
산술 연산자는 boolean 타입을 제외한 모든 기본 타입에 사용 가능합니다
비교 연산자 (부등호 종류와 의미)
부등호 설명 예시 결과 > 왼쪽 값이 오른쪽 값보다 크다 10 > 5 true < 왼쪽 값이 오른쪽 값보다 작다 10 < 5 false >= 왼쪽 값이 오른쪽 값보다 크거나 같다 10 >= 10 true <= 왼쪽 값이 오른쪽 값보다 작거나 같다 5 <= 10 true ! = 두 값이 같지 않다 10 != 5 true = = 두 값이 같다 5 == 5 true 자바에서 부등호는 두 값을 비교하는 데 사용되는 연산자로, 비교 연산자의 일부입니다.
부등호의 종류와 의미는 다음과 같습니다
특징
결과값 : 부등호 연산자는 항상 논리값(true 또는 false)을 반환합니다.
사용 범위 : 숫자, 문자, 변수 등 비교 가능한 모든 데이터 타입에 사용할 수 있습니다.주의사항
등가 비교(==)와 대입 연산자(=)를 혼동하지 않아야 합니다.
문자열 비교 시에는 .equals() 메서드를 사용하는 것이 일반적입니다.
논리 연산자
AND (&&): 두 피연산자가 모두 true일 때만 true를 반환합니다.
예: (a > 5) && (a < 10)OR (||): 두 피연산자 중 하나라도 true이면 true를 반환합니다.
예: (a < 0) || (a > 100)
NOT (!): 피연산자의 논리값을 반대로 바꿉니다.
예: !(a == 0)
XOR (^): 두 피연산자의 값이 서로 다를 때 true를 반환합니다.
예: (a > 0) ^ (b > 0)논리연산자 표
A B A and B A or B Not A A B A && B A || B ! A true (참) true (참) true (참) true (참) false(거짓) true (참) false(거짓) false(거짓) true (참) false(거짓) false(거짓) true (참) false(거짓) true (참) true(참) false(거짓) false(거짓) false(거짓) false(거짓) true(참) 예제 코드
public class ComparisonExample { public static void main(String[] args) { int a = 10; int b = 20; // 부등식 연산 // // 통상적으로 = 표시로 생각 할 수 있겠지만 = 표시는 저장이기때문에 사용이 아니다. // 부등호 사용 예제 System.out.println(a > b); // true (a 는 20보다 크냐?) System.out.println(a < b); // false (a는 20보다 작냐?) System.out.println(a >= b); // true (a는 10보다 크거냐 같냐?) System.out.println(a <= b); // false System.out.println(a != b); // true (a는 10과 같나? a랑 10이랑 다르냐?) System.out.println(a == b); // false (a와 b는 같습니까?) System.out.println(a>5 & a<20); // (a는 5보다 크고 20보다 작냐?) // 문자 비교 (ASCII 값 기준) char x = 'A'; // ASCII: 65 char y = 'B'; // ASCII: 66 System.out.println(x < y); // true (65 < 66) int score= 50; 점수가 80점 이상이면 A 학점 이라고 출력 하고 그렇지 않으면 B 학점 이라고 출력한다. if (score >=80){ // **라면 → 조건 System.out.println("A학점"); // ~ 해라 → 액션 System.out.println("훌륭합니다"); } else //← 그렇지 않으면 {System.out.println("B학점"); System.out.println("노력하세요"); // ← 런걸 로직 이라고 한다 // 이런 구조를 "조건문"이라고 한다. / 컴퓨터에게 일 시킬 때 사용한다. } }
대입 연산자
대입 연산자는 변수에 값을 할당하는 데 사용되는 자바의 기본적인 연산자입니다.
기본 대입 연산자
'=' 기호를 사용합니다.
예: int x = 10;
복합 대입 연산자
대입 연산자와 다른 연산자를 결합한 형태입니다.
주요 복합 대입 연산자
부호 설명 += 더하기와 대입 -= 빼기와 대입 *= 곱하기와 대입 /= 나누기와 대입 %= 나머지와 대입 주의사항
복합 대입 연산자에서 연산자의 순서가 중요합니다.
예 : a =- 3은 a에 -3을 대입하는 것이며, a -= 3과는 다릅니다
증감 연산자
증감 연산자는 변수의 값을 1만큼 증가시키거나 감소시키는 자바의 연산자입니다. 주요 특징은 다음과 같습니다
사용 방법
전위 연산자: ++i 또는 --i
후위 연산자: i++ 또는 i--
전위와 후위 연산자의 차이:
전위 연산자: 변수의 값을 먼저 증가/감소시킨 후 연산에 사용합니다.
후위 연산자: 연산에 먼저 사용한 후 변수의 값을 증가/감소시킵니다.
예시
int i = 5; System.out.println(++i); // 출력: 6 System.out.println(i++); // 출력: 6 (i는 7이 됨) System.out.println(i); // 출력: 7
주의사항
증감 연산자는 변수에만 사용할 수 있습니다.
다른 연산과 함께 사용할 때는 전위와 후위의 차이에 주의해야 합니다.
728x90'☕Java' 카테고리의 다른 글
Java 반복문 마스터하기: 초보자도 쉽게 이해하는 for, while, do-while (0) 2024.12.08 Java 조건문 마스터하기 : if, else, switch 완벽 가이드 (0) 2024.12.08 Java 변수란 무엇일까? (0) 2024.12.06 Java 문법 시작하기 (0) 2024.12.06 Java 란 무엇인가? (0) 2024.12.05