정수
- 정수형 상수는 기본적으로 int형으로 인식된다
System.out.println(10); // 결과값 : 10
System.out.println(123); // 결과값 : 123
- 주의 사항
- 1. 정수형 데이터는 원형이다.
byte a = 127;
System.out.println(a); // 결과값 : 127
a+=1;
System.out.println(a); // 결과값 : -128
a+=5;
System.out.println(a); // 결과값 : -123
* 자료형의 최대 용량을 넘어면 음수(-)로 넘어간다
* ex) 126, 127, -128, -127 ...
- 2. 정수 간의 연산에서는 정수값이 나온다.
System.out.println(10 + 3); // 결과값 : 13
System.out.println(10 - 3); // 결과값 : 7
System.out.println(10 * 3); // 결과값 : 30
System.out.println(10 / 3); // 결과값 : 3
System.out.println(10 % 3); // 결과값 : 1
System.out.println(-10 + 3); // 결과값 : -7
System.out.println(-10 - 3); // 결과값 : -13
System.out.println(-10 * 3); // 결과값 : -30
System.out.println(-10 / 3); // 결과값 : -3
System.out.println(-10 % 3); // 결과값 : -1
System.out.println(0 % 3); // 결과값 : 0
System.out.println(3 % 0); // 에러 >> 자바에선 어떤 수에 0을 나눌 수 없다
실수
- 자료형 종류로는 double, float 이 있다.
- 실수형 상수는 기본적으로 double로 인식된다
- double : 8byte까지 처리 가능, 소수점 15자리
double a = 123.12345678901234567890;
System.out.println(a); // 결과값 : 123.12345678901235
- float : 4byte까지 처리 가능, 소수점 7자리 (* 숫자 맨 뒤에 f 를 입력해야 함)
float b = 123.1234567890f;
System.out.println(b); // 결과값 : 123.12346
* 결과값이 왜 소수점 5자리까지 나오며, 123.12345가 아닌지 확인필요
Cast 연산자
- 내가 원하는 상황에 내가 원하는 데이터 타입으로 임시적으로 형변환을 시켜주는 연산자
- 주의사항
- 실수가 하나라도 포함된 연산에서는 실수값이 나온다
- 실수는 정밀한 계산에서는 사용되지 않는다
- 형태
(바꾸고싶은 자료형)변수, 상수, 연산식
int h = 5;
int w = 3;
System.out.println((h * w) / 2 ); // 결과값 : 7
System.out.println((h * w) / 2.0); // 결과값 : 7.5
System.out.println((double)(h * w) / 2 ); // 결과값 : 7.5
System.out.println(10/3.0); // 결과값 : 3.3333333333333335
System.out.println(10/(int)3.0); // 결과값 : 3
'IT 언어 > Java' 카테고리의 다른 글
[Java] 반복문 문제 --*Q/A (0) | 2023.12.01 |
---|---|
[Java] 랜덤 Math.radom() --*Q/A (2) | 2023.11.27 |
[Java] 제어문 (조건문, 선택문, 반복문) --*Q/A (0) | 2023.11.27 |
[Java] 입출력(I/O) --*Q/A (0) | 2023.11.24 |
[Java] 자료형과 변수 (0) | 2023.11.23 |