본문 바로가기
프로그래밍/JAVA

자바의 정석 기초 (변수 / 상수 / 리터럴 / 변수의 타입 / 기본형의 종류와 크기)

by ✲ 2020. 6. 15.
반응형

남궁성님의 자바의 정석 기초편을 보면서 혼자 공부하는 공간입니다. 참고 부탁드립니다. 

변수(variable)란 

- 하나의 값을 저장할 수 있는 메모리 공간

 

변수의 선언 

변수의 선언 이유 

- 값(data)을 저장할 공간을 마련하기 위해서 

변수의 선언 방법

변수타입 변수이름; 

ex) int age; // 정수(int)타입의 변수 age 선언 

 

변수에 값 저장하기 

int age ; // 정수(int)타입의 변수 age 선언 

age = 25; //변수 age에 25를 저장 

int age = 25; 

변수의 초기화 - 변수에 처음으로 값을 저장하는 것 

int x = 0;  //변수 x를 선언 후, 0으로 초기화 

int y = 5; //변수 y를 선언 후 5로 초기화 

int x = 0, y = 5;  

 

변수의 타입 

- 변수의 타입은 저장할 값의 타입에 의해 결정 

int age = 25;            // int  정수, 25 정수 타입 일치 

int age = 3.14          // int 정수, 3.14 실수 타입 불일치 

- 저장할 값의 타입과 일치하는 타입으로 변수를 선언 

char ch = '가' ;        // char 는 문자 타입 

double pi = 3.14 ; 

값의 타입 

문자 - char 

숫자 -정수 - byte , short, int, long 

      - 실수 - float, double 

논리 - boolean (true / false)

 

변수 / 상수 / 리터럴 

변수 (variable) : 하나의 값을 저장하기 위한 공간 (변경 가능)

상수 (constant) : 한 번만 값을 저장 가능한 변수 (변경X) final 사용

리터럴(literal) : 그 자체 값을 의미하는 것 -> 기존의 상수 

 

리터럴의 접두사와 접미사 

종류 리터럴 접미사
논리형 false , true 없음
정수형 123, 0b0101, 077, 0xFF, 100L L
실수형 3.14, 3.0e8, 1.4f, 0x1, 0p-1 f,d 
문자형 'A','1','\n' 없음
문자열 "ABC',"123","A","true" 없음

정수형과 실수형은 접미사를 통해 구분

boolean power = true;

char ch = 'A'           //하나의 문자는 홑따옴표

String str = "ABC"    //문자열은 쌍따옴표 

 

변수와 리터럴 타입의 불일치 

1. 범위가   '변수 > 리터럴'  인 경우 OK 

int i = 'A';               // int > char 

long   I = 123 ;       // long > int 

double d = 3.14f ;    // double > float 

2. 범위가   '변수 < 리터럴' 인 경우 에러 

int i = 30_0000_0000;      //int의 범위 (+- 20억) 벗어남

long I = 3.14f;               // long < float 

float f = 3.14;               // float < double 

3. byte, short 변수에 int 리터럴 저장 가능 

byte b = 100; 

byte b = 128;              // 에러 

 

문자와 문자열 

char ch = 'A';

char ch = 'AB' ;         //에러 

String str = "ABC" ;   //문자열 - 연속된 여러 문자 

String s = "A"; 

String s = "";           // 빈 문자열

char ch = '' ;          //  홑따옴표 안에 아무값이 없으면 에러 

 

변수의 타입 

기본형 (Primitive type) 

- 오직 8개 (char, byte, short, int, long, float, double, boolean) 

- 실제 값을 저장 

참조형 (Reference type) 

- 기본형을 제외한 나머지 (String, System 등) 

- 메모리 주소를 저장 (4byte 또는 8byte) 

Date today;                  //참조형 변수 today 선언 

todat = new Date() ;      // today에 객체의 주소를 저장 

 

 

기본형 (Primitive type) 종류와 크기 

- 논리형 

true와 false 중 하나의 값으로 갖으며, 조건식과 논리적 계산에 사용

- 문자형

문자를 저장하는데 사용, 변수당 하나의 문자만 저장

- 정수형

정수 값을 저장하는데 사용, 주로 int, long 사용 

byte는 이진 데이터 다루는데 사용 , short은 C언어와 호환성을 위해 추가 (잘 사용하지는 않음) 

- 실수형

실수 값을 저장하는데 사용, float와 double

 

             크기
 종류          
 1 2 4 8
논리형 boolean      
문자형   char    
정수형 byte short int long
실수형     float double

 

기본형 표현 범위

byte b; 

1byte =  8bit 

1bit는 2진수 한자리 0 또는 1 

1bit 일 때 0 또는 1 > 2개 

2bit 일 때 00, 01, 10, 11 > 4개 

n 비트로 표현할 수 있는 값의 개수는 2^n 

n비트로 표현할 수 있는 부호 없는 정수의 범위  : 0~2^n - 1       

ex) 8 bit일 때는 0~ 255 

n비트로 표현할 수 있는 부호 있는 정수의 범위 : -2^n -1 ~ 2^n-1  - 1   

ex) 8bit일 때 -2의7 ~ 2의7 - 1> -127 ~ 128 

반응형

댓글