본문 바로가기
백엔드/Java 입문 (完)

[23-2] Java 입문 11. 데이터 타입 (자료형)

by cejin 2023. 11. 10.

* Java 입문 목차

 

 

1. 데이터 타입

1. 논리형

- boolean: 논리연산자 (참, 거짓)

 

2. 문자

- char : 유니코드, 한글 완성형 (문자),  2바이트, 16비트

 

3. 정수형

- byte : 기본 최소 저장 단위, 1바이트, 8비트

- int : 가장 많이 사용 (정수),  4바이트, 32비트

- long : 정수값을 벗어나면 어미에 대소문자 L (큰 정수),  8바이트, 64비트

 

4. 실수형

- float : 더블형과 구분을 위하여 어미에 대소문자 F, 4바이트, 32비트

- double : 아주 큰 실수, 8바이트, 64비트

 

 

 

* 문자형

1. char

: 문자 1개, 2byte

- Java에서 문자는 유니코드 사용

ex) A, 가 

 

 

1. 디지털화

: 아날로그를 디지털로 바꾸는 것

- 0과 1을 2진수로 바꾸는 것

- 문자, 사진, 영상을 모두 2진수로 저장

 

 

2. 한글

- 완성형

- 11172자

- 유니코드 : 44032 ~ 55203

 

 

* 유니코드 사이트

1) 유니코드

 

Home

 

home.unicode.org

 

2) 유니코드 변환기

 

유니코드 변환기

 

kor.pe.kr

 

 

 

* 정수형

1. byte

: 메모리 사용 크기

- 1byte = 8bit

- 범위 : -128 ~ 127

(-(2^7) ~ (2^7)-1)

0 0 0 0 0 0 0 0  → 0
0 0 0 0 0 0 0 1 → 1
1 1 1 1 1 1 1 1 → -1

1 0 0 0 0 0 0 1 → -127
1 0 0 0 0 0 0 0 → -128

 

 

2. 비트 (bit)

: 0과 1을 가지는 최소 저장 단위

 

 

* 진수 변환

https://ko.calcuworld.com/%EC%88%98%ED%95%99/2%EC%A7%84%EB%B2%95-%EA%B3%84%EC%82%B0%EA%B8%B0/

- 2진수와 10진수 변환

- 인간은 10진수, 컴퓨터는 2진수 사용

- 인간과는 관련 없지만, 중간에 8진수나 16진수가 쓰이기도 함

 

 

 

2. short

- 2byte (= 16bit)

- C언어와 호환을 위해 사용

- Java에선 거의 안 씀

 

 

 

3. int

- 4byte (= 32bit)

- 8bit 블록 4개

(-(2의 31 제곱) ~ (2의 31 제곱)-1)

 

 

 

4. long

- 8byte (= 64bit)

(-(2의 63 제곱) ~ (2의 63 제곱)-1)

- 은행권에서 아주 큰 수를 사용할 때 사용

- int 한계값보다 크면, L이나 l을 써줘야 함 (컴파일러에게 알려주기 위해서)

(가독성 좋은 L 쓰기)

 

 

* 프로그램 코드에 16진수를 쓰는 이유?

- 레거시 프로그램

(* legacy program : 더는 사용되지 않거나 현재 표준보다 오래된 기술을 기반으로 하는 SW 응용 프로그램)

- 셋톱박스 같은 곳에 프로그래밍 Java 버전 1.1.3 이런 식일 때

 

 

 

* 실수형

1. float

- 4byte

- 숫자 뒤에 F나 f 붙이기

(가독성을 위해 F 사용!)

 

 

 

2. double

- 8byte

- 기본적으로 double 형으로 인식

 

 

 

* 논리형

1. Boolean

- 논리타입, 1Byte (8bit)

- 값 : true, false

- C에서는 bool

- java와 실무개발에서 아주 많이 사용