Java 기초: 자료형과 자동 형변환 완벽 정리 🚀

김상욱·2024년 7월 14일
0
post-thumbnail

📚 Java 자료형 정리

Java에서는 다양한 자료형을 제공합니다. 각 자료형의 크기와 특성은 다음과 같습니다:

  • char형: 2바이트 (유니코드 사용)
  • byte형: 1바이트
  • short형: 2바이트
  • int형: 4바이트
  • long형: 8바이트
  • float형: 4바이트
  • double형: 8바이트

🔄 자동 형변환

Java에서는 낮은 데이터 타입을 높은 데이터 타입에 대입할 때 자동으로 형변환이 이루어집니다. 이는 형변환의 편의성을 높여줍니다.

  • 정수형 간의 자동 형변환: byte → short(char) → int → long
  • 실수형 간의 자동 형변환: float → double
  • 정수형에서 실수형으로의 자동 형변환: int → float, int → double, long → double
    ※ char형과 short형의 형변환은 char형은 모든 비트를 문자의 표현에 사용하고 short형은 부호 비트가 있기 때문에 불가능하다.

실수형은 소수점 표현을 위해 더 많은 메모리를 사용하므로, 정수형 데이터를 실수형 데이터로 변환하는 것이 자동으로 이루어집니다.

산술 이항 연산 시, 각 항 중 큰 데이터 타입으로 형변환되어 연산되기 때문에 해당 부분을 고려해야 합니다.

🛠️ 컴파일 타임 vs 런타임 연산

Java에서 상수값의 연산은 컴파일 타임에 이루어집니다. 즉, a = 3 + 3과 같은 연산은 컴파일 할 때 이미 계산되어 a = 6으로 처리됩니다.

반면, 변수에 담아서 계산하는 경우는 런타임에 연산이 이루어집니다. 예를 들어, b = 3; c = 3; a = b + c와 같은 연산은 변수의 값을 읽고 더하는 과정이 런타임에 수행됩니다.


참고 자료 📚

[1] velog - 자바 데이터 타입, 변수 그리고 배열 (https://velog.io/@2yeseul/%EC%9E%90%EB%B0%94-%EB%8D%B0%EC%9D%B4%ED%84%B0-%ED%83%80%EC%9E%85-%EB%B3%80%EC%88%98-%EA%B7%B8%EB%A6%AC%EA%B3%A0-%EB%B0%B0%EC%97%B4)
[2] TISTORY - [Java]자바에서의 형 변환: 자동 변환과 강제 변환 (https://creativevista.tistory.com/entry/Java%EC%9E%90%EB%B0%94%EC%97%90%EC%84%9C%EC%9D%98-%ED%98%95-%EB%B3%80%ED%99%98-%EC%9E%90%EB%8F%99-%EB%B3%80%ED%99%98%EA%B3%BC-%EA%B0%95%EC%A0%9C-%EB%B3%80%ED%99%98)
[3] 티스토리 - [Java] 자바 데이터타입, 변수 그리고 배열 (https://ksabs.tistory.com/164)
[4] JIE0025 - [WhiteShip][2주차] 자바 데이터 타입, 변수 그리고 배열 - JIE0025 (https://jie0025.tistory.com/237)

0개의 댓글