2-1 변수는 무엇일까?
https://www.youtube.com/watch?v=I5cq54MFQCo
최근에 유튜브에서 이러한 영상을 본 적이 있다. 샌드위치를 만드는 방법으로 코딩을 가르치는 영상인데,
이러한 얘기를 한 이유는 우리는 빵에 버터를 발라서 샌드위치를 만든다라고 쉽게 생각하지만 컴퓨터는 그렇지 않다.
예를들어, 3-1 = 2도 컴퓨터가 계산하기 위해서는 3단계의 과정을 거친다.
1. 3을 기억한다.
2. 1을 기억한다.
3. 3과 1을 뺄셈을 한다.
여기서 '기억한다'는 '메모리에 저장한다.'라는 의미로 컴퓨터의 입장에서 위에 내용을 다시 작성해보면,
1. 3을 메모리에 저장한다.
2. 1을 메모리에 저장한다.
3. 저장된 데이터 3과 1을 불러와 뺄셈을 한다.
근데 여기서, 컴퓨터는 3과 1이 저장된 데이터를 가져와야하는데
어떤 데이터를 불러와야 하는지 알 수 없으며 위치를 기억하기 않기에 우리는 변수가 필요하다.
더 쉽게 말하자면,
우리가 중학생때부터 했던 x = 1 을 생각하면 된다.
x는 1이라고 변수를 지정한 동시에 동시에 x는 1이 된다. x라는 변수에 1이 저장되는 것이다
2-2. 변수를 다시 말하자면 ?
변수는 데이터(자료) 를 저장하는 상자(메모리의 공간) 이다.
3-1 = 2를 다시 작성해보면,
3을 저장할 공간의 이름을 a로 정하고 1를 저장할 공간의 이름을 b라고 정했다.
변수 a와 변수 b를 선언했다. 라고 표현한다.
우리는 저장된 상자에 이름을 붙였으니 변수의 이름으로 3과 1에 접근 할 수 있게 된다.
1. 변수 a를 선언하고 3를 저장한다.
2. 변수 b를 선언하고 1를 저장한다.
3. 변수 a에 3를 가져오고 변수 b에서 1를 가져와 뺄셈을 한다.
2-3. 변수 이름 짓는 방법이란?
변수 이름을 정할때는 규칙이 있으며, 아래 규칙대로 변수 이름을 정하면된다.
- 카멜표기법 : 변수명 맨 앞글자는 소문자로 적되, 여러 단어를 연달아 사용할때는 첫글자는 대문자로 표기한다. ex) firstName , secondName
- 스네이크표기법 : 단어 사이를 '_'로 연결하여표기한다. ex) frist_name, second_name
2-4. 변수 선언하는 방법
* 약속* 코딩할 때 = 은 수학에서 말하는 '같다'의 의미가 아니다. = 을 기준으로 오른쪽을 왼쪽에 대입한다는 의미이다. 또, 데이터값을 저장하는 것을 '초기화한다' 라고 말한다. |
① int : 데이터 타입
② num : 변수이름
③ 1 = 변수에 초기화할 값 (리터럴.literal)
10 | |||
20 |
int i = 10;
int i (선언부) : 값은 없지만, 첫줄 왼쪽에서 두번째 상자를 i로 선언한다.
= : 대입연산자 (오른쪽에 있는 값을 오른쪽으로 대입해준다 > "10를 i라는 상자에 넣는다.")
10 (초기화) : i라는 상자에 10를 초기화(저장)한다.
int j = 20;
int j (선언부) : 값은 없지만, 세번째 줄 왼쪽에서 세번째 상자를 j 로 선언한다.
= : 대입연산자 (오른쪽에 있는 값을 오른쪽으로 대입해준다 > "20를 j라는 상자에 넣는다.")
20 (초기화) : j라는 상자에 20를 초기화(저장)한다.
그렇단 int 는 무엇인가? 그거 다음시간에 배우기로 하자.
쉬어가는 타임
(1)숫자 : " ' 표시 없이 숫자만 표기하면 된다.
System.out.println(1+2);
∴ 3
System.out.println(2*5);
∴ 10
(2) 문자와 문자열
문자 (character) : 한글자를 의미 >자바에서 문자는 '(작은따옴표)로 감싸야 한다
문자열 (string) : 여러개의 문자가 결합한 것을 의미한다. > 문자열은 "(큰따옴표)로 감싸야 한다.
System.out.println('생');
∴ 생
System.out.println("생활코딩");
∴ 생활코딩
System.out.println("1" + "1");
∴ 1 1
> " " 가 문자열로 인식했기에 2가 아닌 1 1로 나타난다.
System.out.println("생");
∴ 생
하나의 문자를 큰따옴표로 감싼다고 에러가 발생하지는 않는다. 한 글자도 문자열이 될 수 있기 때문이다.
'ON > 국비 전 독학' 카테고리의 다른 글
07. 배열이란 ? (0) | 2023.03.16 |
---|---|
05. 조건문이란? (0) | 2023.03.11 |
04. 연산자란 ? (0) | 2023.03.10 |
03.데이터 크기 및 타입 (0) | 2023.03.09 |
01. 자바 프로그래밍이란 ? (0) | 2023.03.06 |