데이터 타입

Yoop·2020년 1월 31일
1

Java 개념정리

목록 보기
1/3
post-custom-banner

형태

  • 타입 변수명;
    	#### 기본형 ⇒ 소문자로 시작한다.
    • 숫자
      • 정수 : byte, short(요즘은 잘 사용하지 않는다), int, long
      • 실수 : double, float
    • 문자 : char
    • 논리 : boolean

    참조형 ⇒ 대문자로 시작한다.

    위의 여덟 가지 기본형을 제외하면 모두 참조형이다. 갯수는 셀 수 없다.
    왜? 내가 만들 수도 있기 때문에!
    - 클래스
    cf) String 은 참조형이다.

숫자

기본형 데이터 중에서 정수를 담는 타입은 담을 수 있는 값의 크기가 다르다.

  • byte = 1byte
    short = 2byte
    int = 4byte
    long = 8byte

  • 1 byte = 8bit
    ( bit : 0과 1의 값을 담는다 )

정수 타입

byte b = 127;

1 byte = 8 bit로 2의 8승까지 담을 수 있다.
2^8를 양수 음수 공평하게 나눠 -2^7 = 2^7 -1 범위까지 가능하다.
(-1은 0을 양수쪽에서 빼줘서)

숫자 뒤에 l, L을 붙이면 long 타입
long l = 100;       
l = 100l;            
l = 100L;   // l = 3_000_000_000;          

소문자 l 이 가독성이 떨어져 주로 L을 붙인다.
정수에 아무것도 붙이지 않으면 int로 처리하려 한다.
int 범위를 넘어서기 때문에 에러가 발생한다.

실수 타입

float f = 1.1f          
f = 1.1F;

float 타입으로 쓰려면 숫자 뒤에 f, F를 붙여야 한다.

double d = 1.1;        
d = 100d;                        
d = 100D;

숫자 뒤에 d, D를 붙이면 double형으로 인식한다.
그러나 실수 뒤에 아무것도 붙이지 않으면 기본으로는 double이 된다.

크기 비교

byte < short < int < long < float < double


논리

참과 거짓을 표현하기 위한 타입 :  true, false

boolean b2 = true;
b2 = false;

문자

Single quotation ' '를 붙여서 표현한다.

주의해야할 것 ⇒ Double quotation " "은 문자열이다.

  • 아스키코드 : 문자에 대한 숫자
    cf> 아스키코드 중 대문자알파벳과 소문자알파벳 사이엔 기호가 있어 주의해야한다.
    이어지는 숫자값이 아니다.
char c = 'a'; 
System.out.print(c);    // a

문자 'a'는 97 이다.
만약 int c = 'a'; 로 선언 한다면 타입에 맞게 97을 출력한다..

c = 98;                
System.out.print(c);    // b

이렇게 입력해주면 숫자에 해당하는 문자 b로 바꿔준다.

c = '\u0061';        // 유니코드 : 다국적 지원 문자인코딩,   \u0000 → 16진수
                     // 0으로 시작하면 8진수 0x로 시작하면 16진수
System.out.println(c);        // a
profile
병아리 개발자의 취뽀 일기
post-custom-banner

1개의 댓글

comment-user-thumbnail
2020년 2월 3일

좋은 글 감사합니다😛

답글 달기