충분히 쌓여가는
변수 variable 본문
변수
- 값을 저장할 수 있는 메모리 상의 공간(이 공간에 저장된 값은 변경될 수 있음)
- 하나의 변수에 단 하나의 값만 저장할 수 있음(각 변수에 하나의 메모리 공간 배정됨)
- 새로운 값을 저장하면 기존의 값 사라짐
- 숫자나 문자와 같은 데이터를 저장하기 위해 사용됨
변수 선언
- 변수타입: 변수에 저장될 값이 어떤 타입인지 지정
- 변수이름: 변수에 붙인 이름, 변수는 값을 저장할 수 있는 메모리 공간 -> 변수이름은 메모리 공간에 이름을 붙여 주는것
- 같은 이름의 변수가 여러개 존재하면 안됨(서로 구별될 수 있어야하기 때문)
- 변수 선언: 메모리의 빈 공간에 변수 타입에 알맞은 크기의 저장공간 확보, 이 저장공간은 변수이름을 통해 사용 가능
변수 초기화
- 변수를 사용하기 전에 처음으로 값을 저장하는 것
- 변수를 선언한 이후부터 변수를 사용할 수 있지만, 반드시 변수를 초기화(initialization)해야함
- 메모리는 여러 프로그램이 공유하는 자원이므로 전에 다른 프로그램에 의해 저장된 garbage value가 남아있을 수 있기 때문
- 변수에 값을 저장할 때 대입 연산자 = 사용(오른쪽의 값을 왼쪽 변수에 저장, 대입 연산자의 왼쪽에는 반드시 변수가 와야함)
변수 한 줄에 하나씩 선언
int a;
int b;
int x = 0;
int y = 0;
여러 변수를 한 줄에 선언
int a, b;
int x = 0, y = 0;
프로그램에서 변수 선언 후 어떻게 사용될까
- 모든 변수는 데이터 유형, 이름과 범위를 가지고 있음
- 변수의 데이터 유형은 저장할 수 있는 값들과 적용할 수 있는 연산들을 상술함
- 변수의 이름은 프로그램에서 변수의 값을 언급하는 수단이며 변수 값이 저장되는 메모리 내의 공간에 대한 이름을 나타냄
- 변수 선언의 위치에 따라 그 변수가 프로그램 내에서 유효한 범위가 결정됨
변수의 명명규칙
- 대소문자가 구분되며 길이에 제한 없음(True와 ture는 다름)
- 예약어를 사용하면 안됨(true는 예약어가 아니라서 사용가능, True는 예약어이기 때문에 사용불가능)
- 숫자로 시작하면 안됨(abc10허용, 10abc 불허용)
- 특수문자는 _와 $만 허용($harp 허용, S#arp 불허용)
자바 프로그래머들에게 권장하는 규칙
- 클래스 이름의 첫 글자는 항상 대문자로 함(변수와 메서드의 이름의 첫 글자는 항상 소문자)
- 여러 단위로 이루어진 이름은 단어의 첫 글자를 대문자로 함(ex. lastIndexOf, StringBuffer)
- 상수의 이름은 모두 대문자로 함, 여러 단어로 이루어진 경우 _로 구분함(PI, MAX_NUMBER)
public class ConvertTemp {
public static void main(String[] args) {
int celsiusValue; // 섭씨 온도
double fahrenheitValue; // 화씨 온도
celsiusValue = 27; // 섭씨 온도를 나타내는 변수에 27 저장
fahrenheitValue = 9.0 / 5.0 * celsiusValue + 32.0; // 섭씨 온도를 화씨 온도로 나타내는 변수에 저장
System.out.println("섭씨온도 = " + celsiusValue); // 섭씨 온도 출력
System.out.println("화씨온도 = " + fahrenheitValue); // 화씨 온도 출력
}
}
정리
- 변수는 한 데이터 값을 저장하기 위해 사용되는 메모리내의 한 공간에 대한 이름
- 모든 변수는 사용되기 전에 선언되어야 함
'Java' 카테고리의 다른 글
Scanner vs BufferedReader/BufferedWriter (0) | 2023.01.10 |
---|---|
기본형과 참조형 (0) | 2023.01.09 |
자바 클래스 작성 (1) | 2023.01.06 |
JVM(Java Virtual Machine) (0) | 2022.12.30 |
Java Programming Language (0) | 2022.12.30 |