- 연산자 : 계산하기
계산의 대상 : 피연산자(숫자), 계산의 목적 : 연산자
- 산술연산자 : 사칙연산 +, -, *, /, % 과 비트연산 << , >>
*사칙연산
System.out.println(4 + 2); //6
System.out.println(4 - 2); //2
System.out.println(4 * 2); //8
System.out.println(4 / 2); //2 '/' 몫을 구하는 연산자
System.out.println(5 / 2); //2 몫만 나옴
System.out.println(2 / 4); //0
System.out.println(4 % 2); //0 '%' 나머지를 구하는 연산자
System.out.println(5 % 2); //1
*비트연산 : 맨 아래 상세 설명.
- 1byte = 8bit, bit는 0, 1로 이루어진, 컴퓨터가 저장(표현) 가능한 가장 작은 단위. 때문에 bit연산이 가장 빠르다.
- bit의 자리수를 옮기는 것을 비트연산이라고 한다. `<<` 왼쪽으로 옮기기, `>>` 오른쪽으로 옮기기
-컴퓨터는 0, 1로 이루어진 이진법을 사용.
-<<: 자리수를 왼쪽으로 옮기는 횟수만큼 2의 배수로 곱셉으로 연산한 것과 같음
->>: 자리수를 오른쪽으로 옮기는 횟수만큼 2의 배수로 나눗셈으로 연산한 것과 동일
- 비교연산자 : >, <, >=, <=, ==, != // 큼, 작음, 같음, 다름을 비교. boolean형 값으로 출력된다.
System.out.println(10 > 9); // 10은 9보다 크니? true
System.out.println(10 >= 9); // 10은 9보다 크거나 같니? true
System.out.println(10 < 9); // 10은 9보다 작니? false
System.out.println(10 <= 9); // 10은 9보다 작거나 같니 ? false
System.out.println(10 == 10); // 10은 10과 같니 ? true
System.out.println(10 == 9); // 10은 9와 같니? false
System.out.println(10 != 10); // 10은 10이 아니니? false
System.out.println(10 != 9); // 10은 9가 아니니? true
- 논리연산자 : &&(and), ||(or), !(not) // 비교 연산의 결과값으로 받을 수 있는 boolean 값을 연결하는 연산자, 조건을 연결했을 때 boolean값들을 조합하여 참 또는 거짓인 boolean 값을 출력

- 대입연산자 : =, ++, -- 등... 우변의 값을 좌변에 저장, 연산 복합 대입... `1 = 2`의 의미는 1에 2를 지정하겠다는 뜻.



- 기타연산자 : (type), ? :, instance of // 형변환 연산자, 삼항 연산자, instance of 연산자


- 연산자 우선 순위 : 산술 > 비교 > 논리 > 대입, 괄호로 감싸주면 괄호 안의 연산이 최우선 순위로 계산됨.
- 두 피연산자의 타입이 다를 경우 저장 공간의 크기가 더 큰 타입으로 일치시킨다.(마치 자동형변환).
저장 공간의 크기 : short < int < long < float < double
- 두 피연산자의 타입이 다를 경우 저장 공간의 크기가 더 큰 타입으로 일치시킨다.(마치 자동형변환).
- 비트연산 : 맨 아래 상세 설명.
- 1byte = 8bit, bit는 0, 1로 이루어진, 컴퓨터가 저장(표현) 가능한 가장 작은 단위. 때문에 bit연산이 가장 빠르다.
- bit의 자리수를 옮기는 것을 비트연산이라고 한다. `<<` 왼쪽으로 옮기기, `>>` 오른쪽으로 옮기기
- 컴퓨터는 0, 1로 이루어진 이진법을 사용.
- << : 자리수를 왼쪽으로 옮기는 횟수만큼 2의 배수로 곱셉으로 연산한 것과 같음
- >> : 자리수를 오른쪽으로 옮기는 횟수만큼 2의 배수로 나눗셈으로 연산한 것과 동일


'Java > Java 문법' 카테고리의 다른 글
Java 문법6 (클래스) (0) | 2024.09.05 |
---|---|
Java 문법 5(배열, 복사, 컬렉션) (0) | 2024.09.04 |
Java 문법 4(반복문) (0) | 2024.09.03 |
Java 문법 3 (조건문) (1) | 2024.09.03 |
Java 문법 1 (기본 용어, 변수) (3) | 2024.09.02 |