4-2 Java 기본자료형

정수형 (byte, char, short, int, long)

a. byte-1 byte

-메모리에서 1byte만 차지한다, 8bit 공간만 갖는다,

-표현할 수 있는 정수의 크기가 작다.

(범위 -127 ~ +128 -256개의 정수만 다룰 수 있다.)

*128까지 표현을 할 수 있는데 숫자 200을 넣으면 129부터는 누실(overflow)발생

*잘 사용하지 않는다.

 

b. char (character)

-2byte만 차지한다. 16bit 공간만 갖는다.

-단일 문자 예)A, B, 등등

*잘 사용하지 않는다.

*캐릭터는 숫자가 아니라 문자인데 왜 정수형에 포함시켰는가

-pc컴퓨터는 binary(1,0)으로만 표현할 수 있어서, ABC를 이해할 수 없지만

 A라는 문자를 컴퓨터에서는 65로 표현하자라고 규정을 해서 아스킥코드 만들어놓았다.

 그래서 각각 문자마다 아스킥코드로 만들어 놓았다.

 

c. short

-2byte만 차지한다. 16bit 공간만 갖는다.

-똑같은 정수를 표현하지만 byte보단 큰 수까지 표현을 할 수 있다.

-하지만 그렇게 큰 범위의 정수를 표현할 수 없다.

 

d. int

-4byte만 차지한다. 32bit 공간만 갖는다.

*실생활에서 사람이 필요한 숫자는 32bit 안에서 해결 할 수 있어 많이 쓰인다.

 

e. long

-8byte만 차지한다. 64bit 공간만 갖는다.

*t실생활에서 쓰지 않는 큰숫자까지 취급을 해서 사용할 수 있다.

*얼마나큰숫자????

=>charint가 많이 쓰이고, 2개 중에서도 int가 많이 쓰인다.

 

정리

분류

이름

바이트수

비고

정수형

byte

1 byte

-127  ~  +128

short

2 byte

-32,768  ~ +32,767

int

4 byte

-2,147,483,648 ~
+ 2,147,483,647

long

8 byte

-9,223,372,036,854,775,808 ~
+9,223,372,036,854,775,807

 

실수형(float, double)

)소수점

-3.1456

-1.00056

-1.78

 

a. float

-4byte만 차지 한다. 32bit 공간만 갖는다.

*소수점을 표현하기에는 공간이 작다.

 

b. double

-8byte만 차지한다. 64bit 공간만 갖는다.

*double만 알아도 프로그래밍하는데 지장이 없을 정도로 많이 쓰인다.

 

 

 

논리형 (boolean)

-참과 거짓이라고 한다.

*c계열에서는 0false라고 하고 0이 아닌 숫자는 true라고 한다.

c++true and false가 생겼다.

자바에도 true and false가 있다. 그것이 boolean

 

a. boolean

-1byte, 8bit의 공간을 갖는다.

 

논리형 메모리관리

*선언한 변수의 값이 직접 메모리 공간에 들어가 직접 그 메모리 공간에 있는 변수 값으로 동작한다.

 

 

문자열 (string)

문자열은 charcter가 안되는데 문자열은 어떻게 다루는가?

-string으로 다룬다.

-문자열을 다루는 String은 첫글자가 대문자로 시작한다.

-문자열을 다루는 String은 문자열을 대입할 수 있다.

)String str = "ABCDEFG";

-그래서 엄밀히 말하면 기본자료형이 아닌 객체자료형이다.

-4byte 차지 한다. 32bit의 공간을 갖는다.

 

문자열 메모리 관리

*String 메모리 관리는 String 값은 다른 공간에 만들어 놓고 실제로 선언한 변수 str에는 또 다른 공간에 만들어 놓고

str은 String이 가지고 있는 ABCDEFG의 객체 주소자료만으로 동작하게 된다.

*기본자료형은 첫글자가 소문자로 시작한다.

 

분류

이름

바이트수

비고

실수형

float

4 byte

단정도 실수형(유효 자리는 7

double

8 byte

 

논리형

boolean

1 byte

true, false

문자열

string

4 byte

기본자료형이 아닌 객체자료형

 

 

실습

1. 프로젝트 다시 생성해보기

*생성후 해당 프로젝트 class 생성할 때 클래스 이름을 대문자로 쓰는 습관을 들여 놓는 것이 좋다.

*23lines = "내이름“; 으로 변수 변경이 가능하다.

변수에 담은 자료형은 언제든지 변경이 가능하다는 것

+ Recent posts