public class VarEx01 {
public static void main(String[] args) {
int n1 = 10;
}
}
이전 chapter에서 static의 main의 {}안을 읽는다는 것을 배웠다.
이번에는 {} 안의 int n1 = 10;
을 읽어보자.
이것을 n1이라는 변수에 10이라는 값을 할당했다고 말한다.
그럼 변수란 무엇일까?
📝 변수? 프로그램이 데이터를 저장할 목적으로 사용하는 메모리 공간 주소.
어떤 값을 지정하려면, 그 값을 지정할 공간이 필요하다.
그런데 메모리의 주소는 8bit로(2^32) 아주 많다. 이 주소 번호를 기억하며 공간을 지정하기는 어려울 것이다. 고로 번호 대신 우리가 기억하기 쉬운 'n1'이라는 명칭으로 주소번호에 이름을 달아주는 것이다. 주소번호는 비어있는 메모리 중 자동으로 정해진다.
n1이라는 주소지를 만들려면 변수를 만들겠다 = 변수를 선언해야 한다.
변수는 그냥 선언할 수 없고, 변수에 저장될 값과 똑같은 자료형이라는 것을 적어주고 선언해야 한다.
int n1 = 10;
에서는 int가 자료형(타입)이다.
int는 숫자형 값을 저장하는 자료형으로, 자료형에 대해서는 다음 Chapter에서 알아보자.
int가 숫자형 자료형이므로 10의 값을 넣었을 때 오류가 나지 않는다.
값과 자료형이 다를 경우 에디터에서 디버깅(오류를 읽어냄)이 뜬다.
int n1 = 10;
컴퓨터는 오른쪽에서부터 코드를 읽는다. 순서를 풀어보면 이러하다.
🌳→🌿 대부분의 프로그래밍 언어에서 =는 '같다'는 뜻이 아니다. '대입한다, 할당한다'는 뜻이다.
고로 int n1 = 10;
은 10이라는 값을 n1이 가지고 있는 주소에 저장한다=할당한다는 뜻이 된다.
같음을 의미하고 싶을 때에는 ==라는 연산자를 사용한다. 연산자 또한 차후의 Chapter에서 알아보자.
public class VarEx02 {
public static void main(String[] args) {
int num; //선언
num=10; // 초기화
//int num=10;
}
}