profile image

L o a d i n g . . .

자바 기본형

구분 저장되는 값에 따른 분류 타입의 종류
기본 타입 정수 byte, char, short, int, long
실수 float, double
논리 boolean

 

정수타입

타입 메모리 사용크기 저장되는 값의 허용 범위
byte 1byte 8bit -128 ~ 127
short 2byte 16bit -32,768 ~ 32,767
char 2byte 16bit 0 ~ 65535(유니코드)
int 4byte 32bit -2,147,483,648 ~ 2,147,483,647
long 8byte 64bit -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

 

정수 리터럴 예제

리터럴(literal) : 소스코드에서 프로그래머에 의해 직접 입력된 값, 데이터 그 자체.

ex : int i = 11; //11이 리터럴

package sec02.exam01;

public class IntegerLiteralEx {
	public static void main(String[] args) {
		int var1 = 0b1011; 
		int var2 = 0206;
		int var3 = 365;
		int var4 = 0x83;
		
		System.out.println(var1);
		System.out.println(var2);
		System.out.println(var3);
		System.out.println(var4);
				
	}
}

다양한 정수 리터럴을 int타입 변수에 저장하고 값을 10진수로 출력

 

 

 

 

char타입

문자리터럴 : 하나의 문자를 작은따옴표(')로 감싼 것. 유니코드로 변환되어 저장.

유니코드 : 세계 각국의 문자를 2byte로 표현할 수 있는 숫자(0~65535)로 매핑한 국제 표준 규약

//문자리터럴을 int 타입에 저장할 경우 유니코드 자체 출력됨
char var1 = 'A';
int var2 = 'A';
System.out.println(var1); //A
System.out.println(var2); //65

 

package sec02.exam01;

public class CharEx {
	public static void main(String[] args) {
		char c1 = 'A';
		char c2 = 65;
		char c3 = '\u0041';
		char c4 = '가';
		char c5 = 44032;
		char c6 = '\uac00';
		
		System.out.println(c1);
		System.out.println(c2);
		System.out.println(c3);
		System.out.println(c4);
		System.out.println(c5);
		System.out.println(c6);
	}
}

 

 

 

 

String 타입

문자열리터럴 : 큰따옴표("")로 감싼 문자 

* String 타입은 기본타입이 아닌 클래스 타입이다.

 

 

package sec02.exam01;

public class StringEscapeEx {
	public static void main(String[] args) {
		System.out.println("번호\t이름\t직업");
		System.out.println("행 단위 출력\n");
		System.out.println("행 단위 출력\n");
		System.out.println("우리는 \"개발자\" 입니다.");
		System.out.println("봄\\여름\\가을\\겨울");
	}
}

 

 

 

 

 

 

실수타입

package sec02.exam01;

public class FloatDoubleEx {
	public static void main(String[] args) {
		float var2 = 3.14f;
		double var3 = 3.14;
		
        //double타입인 var5가 var4보다 두배 이상 정밀한 값으로 출력
		float var4 = 0.1234567890123456789f;
		double var5 = 0.1234567890123456789; 
		
		double var6 = 3e6;
		float var7 = 3e6f;
		double var8 = 2e-3;
		
		System.out.println(var2);
		System.out.println(var3);
		System.out.println(var4);
		System.out.println(var5);
		System.out.println(var6);
		System.out.println(var7);
		System.out.println(var8);
	}
}

 

 

 

 

 

논리타입

public class BooleanEx {
	public static void main(String[] args) {
		boolean stop = true;
		if (stop) {
			System.out.println("중지합니다");
		}else {
			System.out.println("시작합니다");
		}
	}
}

 

 

 

 

 

자동타입변환

- 작은타입이 허용 범위가 큰 타입으로 저장될 때 발생

byte < short < int < long < float < double

- 정수타입이 실수타입으로 저장될 때 발생

- char에서 int로 값을 저장할 때 발생 (byte는 char값 저장 불가)

 

강제타입변환은 캐스팅을 해줘야한다.

 

 

 

 

- 혼자공부하는 자바(신용권), 한빛미디어

반응형
복사했습니다!