증감 연산자와 형 변환 연산자

이의준·2024년 5월 22일

Java

목록 보기
8/87

증감 연산자

  • 증가 연산자 (++) : 피연산자의 값을 1 증가시킴
  • 감소 연산자 (--) : 피연산자의 값을 1 감소시킴

  • 전위형 : 값이 참조되기 전에 증가시킴
j = ++;
  • 후위형 : 값이 참조된 후 증가시킴
j = i++;

형 변환 연산자

  • 변수 또는 상수의 타입을 다른 타입으로 변경하는 것
  • (타입)피연산자
double d = 85.4;
int score = (int)d;

변환수식결과
int → char(char) 65'A'
char → int(int) 'A'65
float → int(int) 1.6f1
int → float(float) 1010.0f

자동 형 변환

 float f = 1234; // int 타입의 값을 float 타입의 변수에 저장
 float f = (float)1234; // 컴파일러에 의해 이렇게 자동으로 바뀜
 
 int i = 3.14f // 이건 에러가 뜸 float이 int의 범위보다 크기 때문에 (값 손실 발생)
 int i = (int)3.14f; // 이렇게 직접 변환을 시켜줘야 함 결과는 3
// int -> byte
byte b = 10;
int i = b; // 생략 가능: 단위가 더 작은 byte를 더 큰 int에 넣는 것이므로

// byte -> int
int i2 = 300;
byte b2 = (byte)i2; // 생략 불가: 직접 형 변환을 해주어야 함

// 예외
byte b = 100; // int형은 byte보다 더 큰데 더 큰 단위에서 작은 단위로 형 변환이 가능하다 int는 byte보다 크지만 100은 byte의 범위 (-128~127)에 속하기 때문
byte b = 1000; // 이런 경우는 byte 타입의 범위를 벗어나서 에러가 발생함

0개의 댓글