저번주에 배우는 줄 알았던 변수를 오늘 배웁니다.
더불어 자료형도 살짝식 맛보며 프로그램을 짤 준비를 탄탄히 다져가는 날입니다.
뭐든지 기본기가 중요하다고 아는 것 같았던 내용들도 사이사이에 새로이 배우는 내용들이 있었습니다.
그런 것들에 집중하며 정리를 시작해보도록 하겠습니다!
: 프로그래밍에서 값(Data)를 사용하기 위해 선언하는 것
: 프로그래밍에서 사용되는 자료를 저장하기 위한 공간
: 할당 받은 메모리의 주소 대신 부르는 이름
변수는 이름 그대로 변할 수 있는 값입니다. 이러한 변수는 일상생활에서도 익숙하게 접하고 있는데요, 예시를 한 번 볼까요?
- 사람의 나이는 해가 바뀌면 변한다. (age)
- 두 수를 이용하여 사칙 연산을 하면 그 결과 값은 연산자에 따라 달라진다. (result)
- 게임을 하면 게임 레벨이 점점 올라간다. (level)
이러한 경우의 자료를 관리하기 위해서 프로그램에서는 변수라는 것을 사용합니다. 변수는 프로그래밍에 없어서는 안 될 굉장히 중요한 요소입니다.
변수를 사용하기 위해서는 선언과 초기화의 과정을 반드시 거쳐야 합니다. 선언을 하지 않으면 변수를 사용할 수 없고 초기화를 하지 않으면 변수는 이름만 있는 껍데기일 뿐입니다.
int level; //level이라는 이름의 변수 선언
int level = 0; //level 변수 선언과 동시에 0으로 초기화
변수의 선언은 꼭 필요하지만 변수 선언에도 규칙이 있습니다.
또한 변수의 이름을 정할 때는 변수의 역할에 어울리는, 의미있는 이름을 지어야 합니다. 그저 a
b
로 변수명을 지정하기보다는 시간
은 time
, 숫자
는 num
, 평균
은 avg(average)
등등 의미있는 변수명을 사용해야 나중에 나 또는 다른 사람이 내가 짠 프로그램을 볼 때 이해가 쉽습니다.
변수가 사용할 공간, 즉 메모리의 크기와 특성에 따라 자료형을 사용하여 변수를 선언합니다.
ex) int num;
메모리의 특성
메모리의 크기
종류 | 데이터형 | 바이트 수 | 설명 |
---|---|---|---|
논리형 | boolean | 1byte | 논리값 true(참), false(거짓)을 표현하는 자료형 |
문자형 | char | 2byte | 컴퓨터에서는 문자도 내부적으로는 비트의 조합으로 표현 |
정수형 | byte | 1byte | 동영상, 음악 파일 등 실행 파일의 자료를 처리할 때 사용하기 좋은 자료형 |
short | 2byte | 주로 C/C++ 언어와의 호환시 사용 | |
int | 4byte | Java에서 사용하는 정수에 대한 기본 자료형 프로그램에서 사용하는 모든 숫자(리터럴)은 기본적으로 int(4byte)로 저장됨 32비트를 초과하는 숫자는 long형으로 표시해야 함 | |
long | 8byte | 가장 큰 정수 자료형 | |
숫자의 뒤에 L 또는 l 을 써서 long형임을 표시해야 함 | |||
실수형 | float | 4byte | 값 뒤에 F 또는 f를 붙여줘야 한다. |
double | 8byte | 기본실수형 |
: 문자를 위한 코드 값(숫자 값)들을 정해 놓은 세트
문자를 변수에 저장하면 문자에 해당하는 코드값이 저장됩니다. 예를 들면 A
는 아스키코드값 65
가 저장되고 a
는 아스키코드값 97
이 저장됩니다. 이는 char ch = 65
를 입력하면 실행결과가 A
가 출력된다는 말과 동일합니다.
JAVA는 유니코드 UTF-16 인코딩을 사용하고 있습니다.
본디 자료형은 변수를 선언할 때 변수가 사용할 메모리 크기와 타입을 구분하기 위해 필요했습니다. 즉 변수를 사용하기 위해서는 자료형이 필연적으로 따라와야 하는 존재인 것이었습니다. 하지만 자바10부터는 지역 변수 자료형 추론
을 제공하고 있습니다.
var num = 10; -> int num = 10;
var dNum = 10.0; -> double dNum = 10.0;
var str = "hello"; -> String str = "hello";
이 블로그에 작성된 정보를 더 자세히 알고 싶다면?
Do it! 자바 프로그래밍 입문_자바 프로그래밍 시작하기 강의를 클릭하세요!