변수 -
선언하게 되면 가질 수 있는 자료형이 다를 수 있다. (숫자, 문자, 실수 등등)
축약보다는 가독성과 이해성을 중요시하여 선언하자. ( int ns; 보다는 int numberOfStudent; / 길이는 상관 X )
표현할 수 있는 메모리의 size도 각각 다르게 되는데 그런 것들을 자료형 data type이라고 한다.
변수를 선언하기 위해서는 그 변수에 맞는 Data Type을 먼저 선언해서 같이 변수를 선언해 주어야 한다.
변수를 선언하면 해당되는 자료형의 크기 만큼 메모리가 할당
변수 이름은 영문자(대문자, 소문자)나 숫자를 사용할 수도 있고, 특수문자 중에는 $와 _만 사용
(ex. count100, _master)
변수 이름의 시작은 숫자로 할 수 없음 ( ex. 27days(X), 1abc(X))
자바에서 이미 사용하고 있는 예약어는 사용할 수 없음 (while, break 등)
변수 이름은 프로그램내에서 사용되는 것이므로 그 용도에 맞고 가독성이 좋게 만드는것이 중요
ex) int numberOfStudent;
기본 자료형 (primitive data type) | |
정수 | byte, short, int, long |
실수 | float, double |
문자 | char |
논리형 | boolean |
자료형 (Data Type) - 정수
변수를 선언하면 해당되는 자료형의 크기 만큼 메모리가 할당
변수는 할당된 메모리를 가리키는 이름
예) int level = 10; // 4바이트의 정수형 메모리가 level이라는 이름으로 할당되는 것이다.
기본 자료형(primitive data type)의 종류

int num = 4; // float num = 4;
같은 4byte지만 정수와 실수로 잡히는 것이 다르다.
byte : 1바이트 단위의 자료형, 동영상, 음악 파일, 실행 파일의 자료를 처리할 때 사용
short : 2바이트 단위의 자료형, 잘 안 쓰지만 C/C++ 언어와 호환 시 사용
int : 4byte 단위의 자료형 / 자바에서 사용하는 정수에 대한 기본 자료 형
32비트 초과하는 숫자는 long 자료형으로 처리
long : 8byte 자료형 / 숫자 뒤에 L 또는 l 써서 형식 표시 / 대문자 L로 주로 씀 / l은 숫자 1과 헷갈릴 우려
double : 실수 기본 자료 형 8byte
정수 자료형의 종류와 크기

n-1개 개념 이해
어떤 bit 가 3bit 이면 3bit로 표현할 수 있는 수는 0~7로 8개
[ 2^3-1] 까지 표현 가능 (0부터 시작했으므로 / 8은 표현 불가능)
정수 - 맨 앞에 부호비트가있다 - 양수 음수 n^-1 // 0-0 이 있다 n-1개까지 표현 가능
1byte=8bit
2^8=256 까지 표현 가능
양수만 표현한다면 [ 2^8-1 ] ▷ 255까지 표현 가능
하지만 양수 음수 다 표현해야 하므로 [ -2^7 ~ 2^7 ] ▷ -128~128까지 표현 가능
0 이 존재하므로 -1개 ▷ [ -2^7 ~ (2^7-1) ] -128 ~ 127까지 표현 가능
1byte 는 -128 ~ 127 까지 표현 가능
[ -2^(n-1) ~ (2^(n-1)-1) ]
short=2byte=16bit (2^16 -> 양수 음수 2^n-1 -> 2^15)
[ -2^n-1 ~ (2^(n-1)-1) ]▷ -2^15 ~ (2^15-1) ▷ -32768 ~ 32767 까지 표현 가능 (65536개 표현가능 0 포함)


byte는 -128~127 까지 표현 가능
int와 long 에도 담지 못하는 크기의 숫자는
숫자 뒤에 L 추가하여 long 자료형으로 처리
GOOD ;)
자료형 (Data Type) - 실수
부동 소수점 방식
실수는 정수보다 정밀하기 때문에 정수와는 다른 방식으로 표현해야 한다.

◀ 부동 소수점 방식으로 실수 값
◀ 0.1 표현
지수부와 가수부로 표현한다
컴퓨터에서는 밑수를 2로 사용한다.
1.m x 2^-n 으로 표현
정규화
가수가 밑수보다 작은 한 자리까지 가수로 표현되는 것
컴퓨터에서는 밑수가 2 이므로 정규화를 하게 되면 가수 부분의 첫 번째 자리 숫자는 항상 1 임
예시)
0.2 를 표현 시 0.4x2^-1 이것을 정규화하면 1.6X2^-3
float 형과 double 형

자바에서는 실수의 기본 타입은 double을 사용함
double = 8byte

리터널에서 불러온 실수 3.14
실수의 기본형은 double
double은 8byte의 크기
float 는 4byte의 크기
오류남 float 타입으로 바꿔줘야 함
실수 뒤에 F or f 추가

GOOD :)
부동 소수점 방식의 오류
지수와 가수로 나타내는 부동 소수점 방식에서는
0을 표현할 수 없기 때문에 약간의 오차가 발생할 수 있다.

약간의 오차가 발생함에도
훨씬 많은 범위(range)의 실수를
나타낼 수 있기 때문에 사용
review
변수, 정수, 실수
자바 변수는 타입형을 먼저 선언 후 변수를 선언해 주는 것이 새로웠다.
타입형 별로 차지하는 메모리 size가 다르고
표현할 수 있는 양과 범위가 다르고
작은 쪽에서 큰 쪽으로는 문제가 되지 않지만
반대의 경우에는 오류가 나는 점도 배웠다.
out of range
타입 형만 생각하는 것이 아니라 그 안에서도
타입형 별 크기까지 생각해야 해서 더 복잡해졌다.
type mismatch
정수 : byte / short / int / long
실수 : float / double
리터널 기본 값 : int 와 double
GOOD :)
'JAVA 웹 개발 패키지 - 패스트캠퍼스 > Chapter1' 카테고리의 다른 글
Java의 연산자들 - 1 : ( 대입, 부호, 산술, 복합대입, 증감연산자) (0) | 2021.12.23 |
---|---|
Java - 상수 선언과 형 변환 (0) | 2021.12.23 |
Java - 기본 자료형(primitive data type) - 문자,논리 (0) | 2021.12.22 |
컴퓨터에서 자료 표현하기(2진수, 8진수, 16진수) (0) | 2021.12.20 |
java 와 eclipse 설치 및 프로그램 만들고 실행하기 (0) | 2021.12.20 |