변수의 타입

김민성·2022년 7월 14일
0

Java

목록 보기
4/47
post-thumbnail

변수의 타입(자료형)

  • 기본형 변수 : 실제 값을 저장한다.
  • 참조형 변수: 어떤 값이 저장되어 있는 주소를 저장한다.

기본형 변수

분류자료형byte설명
논리형boolean1true, false중 하나. 조건식과 논리계산 이용한다.
문자형char2변수에 하나의 문자만 저장할 수 있다.
정수형byte1정수를 저장하는데 사용되며 주로 int가 사용된다.
short2
int4
long8
실수형float4실수를 저장하는데 사용되며 주로 double이 사용된다.
doule8

상수와 리터럴

  • 상수 : 변수와 마찬가지로 값을 저장할 수 있는 공간이지만, 한번 저장하면 변경할 수 없다. 변수 타입 앞에 'final' 키워드를 붙여준다.
  • 리터럴 : 변수나 상수에 저장된 이다.

변수와 상수, 리터럴의 예)

int num1 = 3;		 	// num1은 변수, 3은 리터럴
final int num2 = 2;		// num2는 상수, 2는 리터럴

리터럴의 타입

정수형과 실수형에는 여러 타입이 존재하므로, 리터럴에 접미사를 붙여서 타입을 구분한다. 그리고 10진수 외에도 여러 진수로 표현된 리터럴이라는 것을 표현하기 위해 접두사를 붙여서 구별한다.

// 접미사
long num1 = 100000000000L;		// 접미사 L을 붙여 long타입의 리터럴
long num1 = 100_000_000_000L;	// jdk1.7부터는 구분자를 넣어 큰 수를 편하게 읽을 수 있다.

double num2 = 1.234d;			// 접미사 d를 붙여 double 타입의 리터럴
								// 실수형의 기본값이 double이므로 d는 생략 가능하다.
float num3 = 2.345f;			// 접미사 f를 붙여 float 타입의 리터럴
								// f를 생략하면 double타입으로 인식하기 때문에 생략 불가능하다.

// 접두사
int binNum = 0b10;		// 2진수 10이다. 10진수로 나타내면 2
int hexNum = 0x10;		// 16진수 10이다. 10진수로 나타내면 16
int octNum = 010;		// 8진수 10이다. 10진수로 나타내면 8

리터럴의 타입이 달라도 저장 범위가 넓은 타입에 좁은 타입의 값을 저장하는 것은 허용된다.

int a = 'A' 처럼 int 타입에 문자를 저장하는 경우에는 아스키코드값이 저장된다.

long l = 55;		// long이 int보다 더 범위가 넓은 타입이므로 가능.
double d = 1.23f;	// double이 float보다 더 범위가 넓은 타입이므로 가능.
int a = 'A';		// 문자 'A'의 아스키코드 65가 저장된다.

문자와 문자열

  • 문자

    char 타입의 문자는 '' 로 감싸며 반드시 하나 이상의 문자가 필요하다.

  • 문자열

    String 타입의 문자열은 "" 로 감싸며 아무 문자도 넣지 않은 빈 문자열을 허용한다.

문자열의 연산

문자열을 덧셈 연산자를 이용하여 결합할 수 있다. 숫자를 문자열 처럼 이어붙이는 형식으로 연산하고 싶을땐 숫자에 ""을 더해 문자열로 만들면 된다.

String name = "Min" + "Sung";	// name에 "MinSung" 저장됨
int num = 1017;
String numToString = num + "";	// numToString에 "1017" 저장됨

String result = name + num2;	// result에 "MinSung1017" 저장됨

특수문자

특수문자를 변수에 저장하기 위해선 특정 문자 리터럴을 char 타입의 변수에 저장한다.

char tab = '\t';					// 탭
char backspace = '\b';				// 백스페이스
char formFeed = '\f';				// formFeed
char newLine = '\n';				// 엔터
char carriageReturn = '\r';			// 엔터
char backSlash = '\\';				// 역슬래쉬
char qm = '\'';						// 작은따옴표
char dqm = '\"';					// 큰따옴표
char unicode = '\u유니코드';		  // 유니코드	 		 	

0개의 댓글