본문 바로가기
TIL/Learn - Java

자바 자료형 정리 Java Data Type

by koreashowme 2019. 8. 11.

Java Data Type 

Primitive Type

    Boolean Type(boolean)

    ㄴ Numeric Type

        ㄴ Integral Type

            Integer Type(short, int, long)

            ㄴ Floating Point Type(float, double)

        Character Type(char)

ㄴ Reference Type

    ㄴ Class Type

    ㄴ Interface Type

    ㄴ Array Type

    ㄴ Enum Type

    etc.

 

자바 ==> 기본형,  참조형

 

기본형은 다음과 같은 특징을 가집니다.

  • 자바에서 기본 자료형은 반드시 사용하기 전에 선언Declared되어야 합니다.

  • OS에 따라 자료형의 길이가 변하지 않습니다.

  • 비객체 타입입니다. 따라서 null 값을 가질 수 없습니다.

 

    또한 이러한 기본 자료형은 아래와 같은 것들이 존재합니다.

 

    Type        Bits      Range of Values

    ----------------------------------------------------------------------------------------

    byte         8bits    -2^7 ~ 2^7-1 (-128 ~ 127)

    short       16bits    -2^15 ~ 2^15-1 (-32768 ~ 32767)

    int         32bits    -2^31 ~ 2^31-1 (-2147483648 ~ 2147483647)

    long        64bits    -2^63 ~ 2^63-1 (-9223372036854775808 ~ 9223372036854775807)

    float       32bits    0x0.000002P-126f ~ 0x1.fffffeP+127f

    double      64bits    0x0.0000000000001P-1022 ~ 0x1.fffffffffffffP+1023  

    char        16bits    \u0000 ~ \uffff (0 ~ 2^15-1) * 자바에서 unsgined로 동작하는 자료형

    boolean      1bit     true, false

 

 

Referece Type

 

참조형은 기본적으로 java.lang.Object를 상속 받으면 참조형이 됩니다.

또한 선언한 자료형이 기본형이 아닌 경우 참조형이 된다고 보면 됩니다.

참조형에는 클래스형Class Type, 인터페이스형Interface Type, 배열형Array Type이 있습니다.

========================================================================

 

String class

 

일반적으로 기본형 비교는 == 연산자를 사용하지만 String 객체간의 비교는 

.equals() 메소드를 사용해야 합니다.

 

=======================================================================

 

public class ArrayType {

public static void main(String[] args) {

int [] i = new int[10];

Long [] l = new Long[10];

Object[][] o = null; }

}

 

자료형에 대해 []를 선언함으로 배열을 지정할 수 있습니다. 참고로 배열형 변수 또한 배열의 주소를 가지고 있는 것이기 때문에 클래스형의 특징과 일치합니다. 같은 객체의 주소를 바라보게 만들면 동일한 배열을 가리키게 됩니다.

그리고 위 코드의 마지막 라인처럼 [][]등으로 중첩 괄호를 사용하게 된다면 다중 배열로 사용할 수 있습니다.

 

 

 

<참조 : https://jdm.kr/blog/213>

comment