# 타입별 default 값 

byte default: 0 // 1byte 를 구성하는 8개의 bit가 모두 0이라는 뜻.
short default: 0
int default: 0
long default: 0
float default: 0.0
double default: 0.0
reference default: null

 

1. Primitive Type(기본 자료형)

  • short, int, long, float, double / char / boolean / byte

 

  • 숫자형 (short, int, long, float, double )
short s = 1;
System.out.println(a);

int a = 3; // 정수형 변수 선언
System.out.println(a);

long b = 1234567890L; // Long 정수형 변수 선언
System.out.println(b);

float c = 5.5F; // float 실수형 변수 선언
System.out.println(c);

double d = 9.12345678901234567890d; // double 실수형 변수 선언
System.out.println(d);

 

  • 문자형 (char)
char alphabet = 'A'; // 문자형 변수 선언
System.out.println(alphabet);
// char type은 default 값이 없습니다.

 

  • 논리형 (bollean)
boolean fact = true; // 논리형 변수는 true, false의 값을 가진다.
System.out.println(fact);
// boolean type은 default 값이 없습니다.

 

  • 바이트 (byte)
byte data = 'd'; 
System.out.println(data); // 알파벳 d는 ASCII code 에서 십진법으로 100이기 때문에 100이라는 글자가 출력됩니다.

아스키코드란? : https://ko.wikipedia.org/wiki/ASCII

 

 

2. Reference Type(참조 자료형)

 2-1)참조 자료형이란?

  • 자바에서 참조 자료형은 기본 자료형이 아닌 모든 것을 참조 자료형이라고 합니다. 더 정확히는 참조 자료형이란 자바의 인스턴스를 가리킬 수 있는 자료형입니다. 인스턴스가 무엇인지는 뒤에 <객체지향 언어> 단원에서 배우도록 하겠습니다.
  • 클래스와 배열
String sparta = "sparta !!";
System.out.println(sparta);

int[] intArray = new int[] {1,2,3,4,5}; // int 배열을 선언과 동시에 초기화
System.out.println(Arrays.toString(intArray));
  • 이외에도 참조 자료형에는 열거, 인터페이스 타입 있습니다.
  • Java에서는 Primitive Type을 빼고는 모두 Reference Type입니다. 이것은 Java의 언어적인 특징에서 기인하는데요. 모든 클래스가 Object라는 클래스를 상 속 받기 때문인데요. 상속이 무엇인지는 뒤에가서 배우도록 하겠습니다.

 

2-2) 배열이란?

  • 동일한 자료형의 데이터를 연속된 공간에 저장하기 위한 자료구조
int[] intEmptyArray = new int[5]; // int의 5자리 배열 선언
System.out.println(Arrays.toString(intEmptyArray)); // int의 default 값 0으로 채워짐

int[] intArray = new int[] {1,2,3,4,5}; // int 배열을 선언과 동시에 초기화
System.out.println(Arrays.toString(intArray));

String[] stringEmptyArray = new String[5]; // 참조자료형 String의 5자리 배열 선언
System.out.println(Arrays.toString(stringEmptyArray)); // 참조자료형은 값이 없을 경우 null(아무것도 없다) 이라는 표현으로 표시

String[] months = {"1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"}; 
System.out.println(Arrays.toString(months));
System.out.println(months[months.length - 1]); // 배열의 마지막 값 출력

 

int[] scores = new int[4]; // 배열 선언
scores[0] = 5; //인덱스를 통해 배열에 값 입력
scores[1] = 10;
System.out.println(scores[1]); //인덱스를 통해 배열의 특정 값 출력

String[] months = {"1월", "2월", "3월", "4월", "5월", "6월", "7월", "8월", "9월", "10월", "11월", "12월"};
// 이렇게 선언과 동시에 값을 입력할 수도 있습니다.
System.out.println(months[7]); //인덱스를 통해 배열에 접근하여 특정 값 출력

int[][] arr = new int[4][3]; //배열을 활용하여 2차원의 배열도 만들 수 있습니다

 

 

💡 주의! 배열은 선언과 동시에 크기를 지정받습니다. 그러므로 고정된 크기를 가집니다.

💡 실제 프로그램이 돌아가면서 항상 고정된크기의 배열을 쓰기는 쉽지 않은데요. 
그래서 실무에서는 대부분 배열보다는 ArrayList 라는 Collection을 씁니다.

 

+ Recent posts