[자바 기초] 변수 Variable
2021, Jun 15
변수
변수의 정의
- 메모리 공간(RAM)에 하나의 값을 기록하기 위한 공간
- 데이터를 담아두기 위한 상자라고 할 수 있음
- 사용자가 입력한 값을 저장하거나 계산 도중에 중간 결과를 저장할 때 사용
-
변수를 사용하기 위해서는 우선 선언하여 사용해야 함
int value; //정수형 변수 value를 선언한다.
변수의 명명 규칙
- 대소문자 구분이 없다
- 길이 제한이 없다
- 예약어를 사용할 수 없다
- 숫자로 시작할 수 없다
- 특수문자는 ‘_‘와 ‘$’ 외 사용할 수 없다
- 여러 단어의 이름은 단어의 첫 글자를 대문자로 한다.
자료형
- 변수에 저장되는 데이터의 타입을 의미
- 변수를 상자라고 가정하면, 자료형은 상자의 종류와 크기를 나타냄
- 자료형에는 기본형(Primitive Type)과 참조형(Reference Type)이 있음
- 기본형
- 실제 변수의 값을 저장
- 정수형, 실수형, 논리형, 문자형
- 참조형
- 변수의 실제 값이 안니 참조 값(주소)을 저장
- 클래스, 배열, 인터페이스
기본형
자료형 | 설명 | 크기 | 범위 |
---|---|---|---|
byte | 부호있는 정수 | 1바이트 | -128~127 |
short | 부호있는 정수 | 2바이트 | -32768~32767 |
int | 부호있는 정수 | 4바이트 | -2147483648~2147483647 |
long | 부호있는 정수 | 8바이트 | -9223372036854775808~9223372036854775807 |
float | 실수형 | 4바이트 | 약 ±3.40282347 * 10^38 |
dobule | 실수형 | 8바이트 | 약 ±1.7976931 * 10^308 |
char | 문자형 | 2바이트 | \u0000~\uFFFF |
boolean | 논리형 | 1바이트 | NA |
리터럴
-
소스코드에서 변수에 할당된 값을 의미
int x = 123456; // 리터럴 : 123456
-
정수형 리터털은 여러 진법으로 표현이 가능
int i10 = 14; //10진수 decimal int i8 = 016; //8진수 octal int i16 = 0xe; //16진수 hexadecimal int i2 = 0b1110; //2진수 binary
- 실수형 리터럴은 일반 표기법이나 지수 표기법으로 표현이 가능
- 일반 표기 : 123.45
- 지수 표기 : 1.2345E+2
float temperature = 12.3F; //부동소수점 리터럴의 기본형은 double이기 때문에 F를 붙여야 함
-
문자형 리터럴은 유니코드를 사용하여 16비트로 표현됨
char ch1 = '가'; char ch2 = '\uac00'// '가'를 나타냄
-
논리형 리터럴은 참과 거짓을 나타내는데 사용
boolean flag = true; boolean x = 1 < 2; // false가 저장됨
- 상수는 프로그램이 실행하는 동안 값이 변하지 않는 수, 또는 변경 불가능한 수를 의미
- 리터럴도 상수의 일종
-
자바에서는 final 키워드를 사용하여 리터럴을 기호상수로 표현
final double PI = 3.141592;
문자열
- 자바 언어에는 내장된 문자열 자료형이 없고, 대신 String 클래스를 제공
-
String 클래스를 문자열을 나타내는 자료형으로 취급
String s1 = ""; String s2 = "Hello World";
-
String 객체들은 + 연산자를 이용하여 다른 변수와 문자열을 합칠 수 있음
System.out.println("내년이면 " + age + "살이 됩니다.");
형변환
- 형변환은 하나의 자료형을 다른 자료형으로 변환하는 것이 필요
- 형변환에는 자동 형변환가 강제 형변환이 있음
-
자동 형변환 : 수식을 계산할 때 가장 범위가 넓은 피연산자 타입으로 변환
dobule sum = 1.3 + 12; // 1.3 + 12.0으로 변환됨
-
강제 형변환 : 형변환 연산자를 이용하여 형변환
double x = 3.7; int y = (int) x; //y에는 3만 저장
-