1. 원시 자료형(Primitive type):
변수에 실제 값을 가지는 자료형
2. 참조 자료형(Reference type):
실제 값을 갖는 것이 아닌 데이터가 저장된 메모리의 주소 값을 가지는 자료형
원시 자료형 |
int | 정수형 | -2147483648 ~ 2147483647 | int a = 0 |
long | 정수형 | -9223372036854 775808 ~ 9223372036854 775807 |
long a = 123 | |
float | 실수형 | -3.4 *10^38 ~ 3.4*10^38 |
float a = 1.234 | |
double | 실수형 | -1.7*10^308 ~ 1.7*10^308 |
double a = 1.234 | |
boolean | 불 | True, False | boolean a = true | |
char | 문자형 | 문자, 아스키코드, 유니코드 (문자로 출력함) |
char a = "d" | |
참조 자료형 |
String | 문자열 | 원시자료형에 포함되지 않으나, 리터럴표기 가능 |
String a = "Geun" |
type [] | 배열 | - 크기, 순서 O | String[], int[], float[] ... | |
ArrayList | 리스트 | - 크기, 순서 X - 새로운 값 추가 가능 |
ArrayList<Integer> a = new ArrayList<>() | |
HashMap | 맵 | key - value 쌍 | HashMap<string, integer=""> a = new HashMap<>()</string,> | |
HashSet | 집합 | 중복 X, 순서 X | HashSet a = new HashSet<>() |
3-1. 리터럴 표기란?
객체를 생성하지 않고 고정된 값을 그대로 대입하는 방식. 원시자료형에서 사용
ex) String a = "Geun's blog"
>> a라는 변수에 "Geun's blog"라는 문자열 값을 그대로 대입
3-2. 참조자료형에서는?
new키워드를 사용하여 객체 만들어 사용. 객체 중심으로 코드 작성에 유리
ex) String a = new String("Geun's blog")
>> 항상 새로운 String 객체를 만든다.
3-3. Wrapper 클래스
원시자료형을 객체로 다루기 위해 객체화 시키는 클래스. 객체 지향 프로그래밍의 모든 기능을 활용할 수 있게 한다.
원시자료형 | Wrapper 클래스 |
int | Integer |
long | Long |
double | Double |
float | Float |
boolean | Boolean |
char | Char |
4. 형 변환
(1) 문자열 → 정수
int n = Integer.parseInt(문자열)
*정수 형태로 이루어진 문자열이어야 한다. (실수형태의 문자열은 정수형태로 변환 불가)
(2) 정수 → 문자열
String num = "" + (정수) *정수 앞에 빈 문자열("") 더하기
String num = String.valueOf(정수)
String num = Integer.toString(정수)
(3) 실수 → 정수
int n = (int) (실수) *실수 앞에 (int) 붙임