1. 자료형(data type)
기본 자료형의 종류
정수형 문자형 실수형 논리형
1바이트 | byte | - | - | boolean |
2바이트 | short | char | - | - |
4바이트 | int | - | float | - |
8바이트 | long | - | double | - |
자바에서 문자 표현
- 자바는 문자를 나타내기 위해 전 세계 표준인 UNICODE를 사용
- utf-16 인코딩을 사용 (모든 문자를 2바이트로 표시
논리형과 자료형 없이 변수 사용하기
- true(참), false(거짓) 두 가지만 나타냄
- 1바이트를 사용 함
- 값이 존재하는지, 배열이 비었는지, 결과가 참인지 거짓인지 등을 표현
변하지 않는 상수
- 상수는 변하지 않는 수
- final 예약어를 사용하여 선언
- 상수를 사용하면 변하지 않는 값을 반복하여 사용할 때 의미 있는 문자로 인식하기 쉽고, 변하더라도 선언한 부분만 변경하면 되므로 여러 부분을 수정할 필요가 없음
final int MAX_NUM = 100;
형 변환
- 서로 다른 자료형 간에 연산 등의 수행을 위해 하나의 자료형으로 통일하는 것
- (묵시적 형 변환) 바이트 크기가 작은 자료형에서 큰 자료형으로 형 변환은 자동으로 이루어짐
- (명시적 형 변환)바이트 크기가 큰 자료형에서 작은 자료형으로 형 변환은 변화하고자 하는 자료형을 써줘야 함
byte bNum = 10;
int iNum = bNum;
int iNum = 10;
byte bNum = (byte)iNum;
2. 연산자
산술 연산자
연산자 기능 연산 예
+ | 두 항을 더합니다. | 5+3 |
- | 앞에 있는 항에서 뒤에 있는 항을 뺍니다. | 5-3 |
* | 두 항을 곱합니다. | 5*3 |
/ | 앞에 있는 항에서 뒤에 있는 항을 나누어 몫을 구합니다. | 5/3 |
% | 앞에 있는 항에서 뒤에 있는 항을 나누어 나머지를 구합니다. | 5%3 |
복합 대입 연산자
연산자 기능 연산 예
+= | 두 항의 값을 더해서 왼쪽 항에 대입합니다. | num1+=2; |
-= | 왼쪽 항에서 오른쪽 항을 빼서 그 값을 왼쪽 항에 대입합니다. | num1 -=2; |
*= | 두 항의 값을 곱해서 왼쪽 항에 대입합니다. | num1 *=2; |
/= | 왼쪽 항을 오른쪽 항으로 나누어 그 몫을 왼쪽 항에 대입합니다. | num1 /=2; |
%= | 왼쪽 항을 오른쪽 항으로 나누어 그 나머지를 왼쪽 항에 대입합니다. | num1 %=2; |
증가, 감소 연산자
연산자 기능 연산 예
++ | 항의 값에 1을 더합니다. | val = ++num; //먼저 num 값이 1증가한 후 val 변수에 대입 |
val = num++; //val 변수에 기존 num 값을 먼저 대입한 후 num 값 1 증가 | ||
-- | 항의 값에서 1을 뺍니다. | val = --num; //먼저 num 값이 1감소 후 val 변수에 대입 |
val = num--; //val 변수에 기존 num 값을 먼저 대입한 후 num 값 1감소 |
논리 연산자
연산자 기능 연산 예
&&(논리 곱) | 두 항이 모두 참인 경우에만 결과 값이 참이고 그렇지 않은 경우는 거짓 | boolearnval = (5>3) && (5>2); |
(논리 합) | ||
!(부정) | 단항 연산자입니다. 참인 경우는 거짓으로 바꾸고, 거짓인 경우는 참으로 바꿉니다. | boolearnval = !(5>2); |
조건 연산자
- 삼항 연산자
- 조건식의 결과가 true인 경우와 false인 경우에 따라 다른 결과가 수행됨
- if(조건문)을 간단히 표현할 때 사용할 수 있음
연산자 기능 연산 예
조건식 ? 결과1 : 결과2; | 조건식이 참이면 결과1, 조건식이 거짓이면 결과2가 선택 | int num = (5>3) ? 10 : 20; |
'Language > Java' 카테고리의 다른 글
[Spring boot] (2) Spring boot를 활용한 To do Application (0) | 2022.01.23 |
---|---|
[Spring boot] (1) Spring boot를 활용한 To do Application (0) | 2022.01.23 |
[Java] System.in.read() (0) | 2022.01.15 |