티스토리 뷰

주의 사항!

  • 이 글은 제가 직접 공부하는 중에 작성되고 있습니다.
  • 따라서 제가 이해하는 그대로의 내용이 포함됩니다.
  • 따라서 이 글은 사실과는 다른 내용이 포함될 수 있습니다.


'데이터 타입'이란, C언어에서의 자료형과 같습니다. C언어에는 다음과 같은 자료형들이 있었습니다.

 

char, short, int, long, float, double

 

자바에서 데이터 타입도 C언어의 자료형과 크게 다르지 않습니다. 다만, C언어에서의 자료형에 두 가지 새로운 자료형이 추가되고, 또 char형이 자바에서는 조금 다릅니다. 그 외 나머지 short, int long, float, double은 C언어의 것과 같으므로 따로 설명은 하지 않겠습니다.

 

 byte

자바에는 byte타입이 추가되었습니다. 이 타입은 색상 정보 및 파일 또는 이미지 등의 이진(바이너리) 데이터를 처리할 때 주로 사용됩니다. 메모리 크기는 1byte입니다. C언어에서 1byte 크기의 자료형은 char형이 있었습니다. 

 

char

C언어에서 char는 1byte의 메모리 크기를 가졌지만, 자바에서는 2byte의 메모리 크기를 가집니다. 왜냐하면 자바에서는 모든 문자를 유니코드로 표현하기 때문입니다. C언어는 아스키코드를 사용하고 있습니다. 따라서 C언어의 char형 변수에는 'ㄱ', '가', '한'과 같은 한글 글자들을 저장할 수 없습니다. 이런 글자들은 아스키코드에는 정의되어 있지 않기 때문입니다. 

 

반면 유니코드는 16비트의 조합으로 더욱 많은 데이터를 표현할 수 있습니다. 16비트의 조합으로 표현할 수 있는 조합은 총 65,536개이며, 여기에 현대 한국어의 자모 조합으로 나타낼 수 있는 모든 완성형 한글 11,172자(가, 각, 갂, 갃, ..., 힠, 힡, 힢, 힣)이 모두 들어갑니다. 따라서 'ㄱ'이나 'ㅏ'와 같은 자음, 모음뿐만 아니라 '한', '가'와 같은 자모의 조합으로 완성된 글자까지도 char 타입 변수에 저장할 수 있습니다. 

 

boolean

boolean 타입은 논리 데이터 true, false를 저장할 수 있는 데이터 타입입니다. C언어에서는 이 데이터 타입이 없고, true나 false도 정의되어 있지 않아서 따로 정의해서 사용하거나, true, false 대신 1,0을 사용했습니다. 자바에서는 true와 false가 예약어로 정의되어 있고 이들을 저장하는 데이터 타입 boolean도 새로 생겼습니다.

 

String

번외로 문자열을 저장하는 데이터 타입까지 소개하겠습니다. String은 기본 데이터 타입은 아닙니다. 이는 클래스 타입입니다. C언어나 C++에서는 문자열을 저장하기 위해서는 char배열을 사용했었습니다. 그리고 C++를 배울 때 클래스와 객체에 대해 배우면서 String 클래스를 직접 정의하고 사용해 보기도 했습니다. 그때 구현했던 String 클래스를 떠올리면 쉽습니다. String은 데이터 타입이라기보다 문자열을 저장하는 기능을 갖는 클래스를 정의해 둔 것으로 생각하면 이해하기 쉽습니다.

'공부 일지 > JAVA 공부 일지' 카테고리의 다른 글

자바, 향상된 for문  (0) 2021.04.05
자바, 데이터 타입 변환  (0) 2021.04.05
자바, 리터럴  (0) 2021.04.05
자바, 변숫값 저장  (0) 2021.04.05
자바 IDE, Eclipse 설치하기  (2) 2021.04.02
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함