자료형
public class Variables {
public static void main(String[] args){
boolean myBoolean = true;
myBoolean = false;
long myInt = 123;
myInt = 12345678910L;
double myDouble = 3.14;
System.out.println((myDouble));
String myString = "I love u!";
String hello = "Hello, I'm";
String dot = ".";
System.out.println(hello);
System.out.println(27);
System.out.println(dot);
}
}
기본 자료형
자바에는 '기본 자료형(Primitive Types)'이 있습니다. 가장 기본이 되는 자료형들입니다.
각 자료형의 기본 값은 다음과 같습니다.
분류
|
이름
|
바이트 수
|
비고
|
정수형
|
byte
|
1
|
-127 ~ +128
|
short
|
2
|
-32,768 ~ + 32,767
|
|
int
|
4
|
-2,147,483,648 ~ +2,147,483,647
|
|
long
|
8
|
-9,223,372,036,854,775,808~
+9,223,372,036,854,775,807
|
|
실수형
|
float
|
4
|
단정도 실수형 (유효 자리는 7 정도임)
|
double
|
8
|
배정도 실수형 (유효 자리는 15정도)
|
|
문자형
|
char
|
2
|
유니코드 문자열
|
논리형
|
boolean
|
1
|
true, false
|
숫자형
숫자를 담는 자료형은 정수형 byte, short, int, long, 그리고 소수형 float과 double이 있습니다.
정수형
자바에서는 int를 정수형의 메인으로 사용합니다. 즉, 정수를 입력하면 기본적으로 int로 간주합니다.
byte a = 127;
하지만 이렇게 **127**을 byte 변수에 지정해주면, 127은 byte의 범위 내에 있기 때문에 컴파일러가 알아서 127을 byte로 바꿔줍니다.
long x = 12345678910;// 오류 (정수 범위를 벗어남)
만약 int의 범위에서 벗어나는 값을 써주면 오류가 나옵니다. 고치기 위해서는 L을 붙여주면 됩니다.
long을 표현하기위한 리터럴은 뒤에l(소문자 엘)또는 L(대문자 엘)을 붙여줍니다. 소문자 l(엘)의 경우 숫자 1(일)과 혼동될 수 있으니 대문자 L(엘)을 적는 것이 권장사항입니다.
long x = 12345678910l;// 소문자 l은 1과 헷갈릴 수 있음long x = 12345678910L;// 권장사항
소수형
자바에는 두 가지 소수형 자료형이 있습니다: float과 double.
float과 double은 둘다 소수형을 담지만 정밀도(Precision) 혹은 정확도에 차이가 있습니다. double이 더 정밀하게 값을 보관할 수 있습니다. 이러한 이유로 자바에서는 double을 소수형의 기본으로 사용합니다. 정수를 입력하면 기본적으로 int로 인식되듯이, 소수를 입력하면 기본적으로 double로 인식되는 것이죠.
만약 float를 쓰고 싶으면 소수를 쓰고, 뒤에 f를 붙여주면 됩니다.
float f = 3.14f;
글자
char a1 = 'a';
char a2 = 97;
char a3 = '\\u0061';
char a4 = '가';
글자(Character) 하나를 담는 자료형 char도 있습니다. char은 딱 글자 하나만 넣어줄 수 있고, 작은 따옴표로 글자를 둘러싸야 합니다. 글자 여러 개를 담고 싶으면 큰 따옴표로 둘러싸고 아래에서 배울 String이라는 자료형을 사용하면 됩니다.
a1에는 글자 'a'를 담았고, a2에는 글자 'a'에 해당하는 ASCII 값인 97을 담았습니다. 사실 a1과 a2는 같은 셈이죠.
a3는 유니코드 값입니다. '가'도 유니코드 중 하나라 자바의 char에 담을 수 있습니다.
Boolean
boolean myBoolean = true;
myBoolean = false;
참(true), 거짓(false)을 담는 boolean 입니다. 값으로는 true와 false가 가능합니다.
문자열
이제 조금 특별한 자료형을 살펴볼까요? String은 제일 위의 기본 자료형에 없죠? String은 기본 자료형이 아니라 클래스입니다. 클래스를 변수의 형으로 쓰고 변수를 선언하면 그 변수는 클래스의 인스턴스를 담을 수 있습니다. String 클래스에 대해서는 이후에 제대로 배우니까, 일단은 이해가 안 되도 그냥 넘어가셔도 됩니다.
먼저 String은 큰 따옴표(")로 둘러싸인 글자들을 적어 만들 수 있습니다.
String a = "Hello, I'm ";
String b = ".";
System.out.print(a);
System.out.print(26);
System.out.println(b);
Hello, I'm 26.
다양한 활용법은 차차 알아보도록 합시다!
public class Variables {
public static void main(String[] args){
boolean myBoolean = true;
myBoolean = false;
String name = "코드잇";
int year = 2015;
byte month = 7;
byte day = 20;
boolean married = false;
System.out.print("이름: ");
System.out.println(name);
System.out.print("생일: ");
System.out.print(year);
System.out.print("년 ");
System.out.print(month);
System.out.print("월 ");
System.out.print(day);
System.out.println("일");
System.out.print("결혼: ");
System.out.println(married);
}
}
'Programming > Java' 카테고리의 다른 글
자바 기초부터 ABC (7) - 형변환 (0) | 2021.11.13 |
---|---|
자바 기초부터 ABC (6) - 연산자 (0) | 2021.11.13 |
자바 기초부터 ABC (4) - 변수 (0) | 2021.11.12 |
자바 기초부터 ABC (3) - 클래스 (0) | 2021.11.12 |
자바 기초부터 ABC (2) -자바와 객체지향 (0) | 2021.11.12 |