자바의 정석 기초 편 참조
https://cafe.naver.com/javachobostudy
변수 선언과 대입 (저장)
프로그래밍을 하면 변수란 단어를 많이 접할 것이다.
변수(Variable)란 하나의 값을 저장할 수 있는 저장 공간이라고 생각하면 된다.
변수는 오직 하나의 값만 저장할 수 있기에 이미 값이 저장된 변수에 새로운 값을 저장하면 기존 값은 지워지고 새로 저장된 값만 남는다.
저장공간이 필요할 경우 먼저 변수를 선언한 후 사용할 수 있다.
변수를 선언할때는 변수 타입과 변수 이름을 입력한 후 세미콜론(;)으로 마무리해줘야 한다.
int x; 로 선언해줄 수 있으며, 선언과 동시에 값을 넣고 싶을 때는 int x = 5; 로 선언해줄 수 있다.
변수 타입은 변수에 저장될 값이 어떤 값이냐에 따라 변수에 들어갈 수 있는 값과 크기가 달라진다.
변수의 타입은 여러개가 있으나 가장 많이 사용하는 것부터 설명하겠다.
숫자 | int(Integer) long |
정수(Integer)를 저장하기 위한 타입 (20억이 넘으면 long으로 사용해야 함) |
float double |
실수(floating-point number) 를 저장하기 위한 타입 float는 오차없이 7자리, double은 15자리까지 사용 가능 |
|
문자 | char | 문자(character)를 저장하기 위한 타입 |
String | 여러 문자(문자열, string)을 저장하기 위한 타입 |
숫자의 경우
20억이 넘는 경우가 많지 않기에 정수형 타입 int를 많이 사용하며, 실수는 float보다 double을 대표적으로 많이 사용한다.
문자의 경우
- char은 1개의 문자만 들어갈 수 있으므로 'A' 와 같은 1개의 문자만 들어갈 수 있으며 'JAVA'로 입력 시 에러 메시지를 보이며 컴파일(실행)이 되지 않는다.
- String은 문자열을 저장할 수 있기에 한개의 문자가 아닌 단어, 문자열을 넣을 수 있다.
"JAVA"로 입력이 가능하므로 char보다는 String을 많이 사용한다.
char과 String을 쉽게 구별하는 방법은 조금 화남, 많이 화남으로 구별하면 쉽다.
char - 'A' (조금 화남)
String - "A" (많이 화남)
변수 선언 예시 그림과 결과를 보면 조금은 감이 올 거라 생각한다.
6번째 줄 int x; 를 선언하여 x라는 정수형 공간이 만들어졌다.
8번째 줄 x = 5; 를 입력하여, x 변수에 정수형 숫자 5를 대입하여 x를 5로 만들었다.
10번째 줄 System.out.println(x); 는 x를 화면에 출력하라는 명령이며, 결과 화면에 5가 출력된 것을 볼 수 있다.
12번째 줄 x = 7; 을 입력하여 x 변수에 정수형 숫자 7을 대입하여 x를 7로 만들었다.
14번째 줄 System.out.println(x); 는 x를 화면에 출력하라는 명령이며, 기존의 값인 5는 지워지고 7로 변경되어 결과 화면에도 7이 출력된 것을 볼 수 있다.
위에서 설명한 것처럼 변수는 하나의 값을 저장하는 저장공간이라 처음 5를 대입 후 7을 재 대입 할 경우 기존의 값인 5는 지워지고 재 대입한 값인 7로 변경되는 것을 꼭 기억하길 바란다.
여기서 주의할 점은 수학에서 '=' 가 같음을 의미하지만, 자바에서는 오른쪽 값을 왼쪽에 저장하라는 대입 연산자이니
수학과 혼동하지 않도록 주의하자.
이전 시간에 화면 출력에 대한 설명을 하였다.
정확히 모를 경우 이전 화면 출력을 다시 봐주길 바란다.
2020/06/14 - [JAVA] - [JAVA] 화면에 글자 출력하기 - print(), println()
변수를 이용한 사칙연산 예시와 결과를 보면 변수를 이용하여 사칙연산 출력도 가능하므로
각 변수에 대입하고 싶은 값만 저장하고 변수와 사칙연산만 입력해주면 한결 편리하다.
지금까지 이해되었다면, 변수 선언과 대입이 가능해졌고, 변수의 편리함을 알게 된 것이다.
자바에 두 걸음 다가온 것을 축하한다.
오늘 배운 것 중 주의할 점은 변수는 하나의 값만 저장 가능하며, 수학에서의 '=' 같음과 자바에서의 대입을 혼동하지 말자.
'JAVA' 카테고리의 다른 글
[JAVA] 문자열 결합 (0) | 2020.06.18 |
---|---|
[JAVA] 문자열 리터럴과 문자 리터럴 (0) | 2020.06.16 |
[JAVA] 리터럴 (0) | 2020.06.16 |
[JAVA] 상수와 리터럴 (0) | 2020.06.16 |
[JAVA] 화면에 글자 출력하기 - print(), println() (0) | 2020.06.14 |