형변환
: 변수의 타입을 바꾸는 것
1) 자동 형 변환
: 타입이 서로 다른 값을 연산할때 자동으로 작은 타입을 큰 타입으로 변환 해 계산 해 준다.
4.14 + 5 는 4.14 가 float 타입, 5는 int 타입이라 계산이 불가하다.
하지만 자동 형변환으로, 4.14 + 5.00 이 계산 되어 9.14 의 값이 나오게 하는게 자동 형변환이다.
연산자 필요 없음
2) 강제 형변환
: 상황에 따라 개발자가 의도한 타입으로 직접 변환하는 것
char[]arr2 = new char [3]; //방이 3개인 문자형 타입 arr2 생성
char ch= 'a'; //ch 에다 문자 a 로 초기화 시켜놓고
for (int i=0; i<arr2.length;i++) { //for 문을 돌려서 배열을 채울 건데,
arr2[i] = (char) (ch + i); // 문자형 타입의 배열이니 문자(char)에 이미 있는 a + i 를 해줌
} // for 문 탈출
//arr2[0] = 'a';
//arr2[1] = 'b';
//arr2[2] = 'c'; 이렇게 채워 질거다.
for (int i=0;i<arr2.length; i++){ //for 문 이용 해서 출력
System.out.print(arr2[i]);
}
JAVA 알파벳 유니코드 사용 대문자 A=65 소문자 a =97.
(Char) 강제 형변환 해주는 casting 연산자.
ch = 문자 2바이트, i = 숫자 int 4바이트라서 사이즈가 맞지 않는다. 그래서 작은 바이트가 큰 바이트로 형태가 변환 되어 계산 되어 진다. 따라, ch가 int 로 형변환 되어 계산 된다. 그러면 (ch + i) = 현재 int 숫자 타입이다. 이 숫자 타입을 배열을 생성 할때 선언 한 char 에 맞춰서 사용 해야 함으로 (char) 캐스팅 연산자가 강제로 형변환을 시켜 (ch + i) 가 char 가 된다.
'JAVA' 카테고리의 다른 글
[JAVA] 자바 배열을 이용한 학생 성적표 만들기 (0) | 2023.02.22 |
---|---|
[JAVA] 자바 입력 값을 받는 배열 예제 (0) | 2023.02.21 |
[JAVA] 자바 입력 값을 받아 배열 완성 (0) | 2023.02.21 |
[JAVA] 자바 배열과 for 문 함께 사용 (0) | 2023.02.21 |
[JAVA] 자바 배열 복사 (깊은 복사) (0) | 2023.02.20 |