연습하기/자바의 정석
자바의 정석 챕터3-2
코딩마스터^^
2022. 12. 4. 23:12
1. 형변환 연산자
형변환이랑 변수 또는 상수의 타입을 다른 타입으로 변환하는 것
int--->char ====>(char)65 : 'A'
유니코드 문자표에 의해서 변화된다.
char--->int =====>(int)'A' : 65
2. 자동 형변환
형변환을 생략하면 컴파일러가 자동으로 형변환을 해준다.
기존의 값을 최대한 보존할 수 있는 쪽으로 자동 형변환이 된다.
float f = 1234; //int타입의 값을 플로트 타입의 변수에 저장
- 원래는 대입 연산자의 타입이 일치해야되는데 자동으로 형변환을 시켜준다.
큰걸 작은거에 넣으면 문제없지만 작은걸 큰거에 넣으면 문제있음.
값 손실이 된다.
3. 산술 변환
연산전에 피연산자의 타입을 일치시키는 것
- 보다 큰 타입으로 두 연산자의 타입을 같게 일치시킨다.
- 피연산자의 타입이 int보다 작은 타입이면 int로 변환된다.
- 범위를 벗어나면 오버 플로우가 발생해서 값 생략이 된다. 계산결과가 부정확 해진다.
'2'-'0'?
char-char===>int-int로 바뀐다.
유니코드따르면 50-48 : 2 가 된다.
4. 반올림
Math.round();
실수를 소수점 첫째자리에서 반올림한 정수를 반환
long result = Math.round(4.52); //result가 5에 저장된다.
= 대입연산자
논리연산자
|| //or
&& // and