좋습니다
돌아오신 것을 환영합니다
이번 영상에서는 드디어 variable(변수)를 제대로 살펴볼 예정입니다
사실 지금까지 본 Interger 같은 숫자 데이터 종류들도 변수들이었습니다
이제부터는 실제로 프로그램 안에서 사용하는 법을 살펴보겠습니다
지난 영상에서 만든 KotlinBasics 프로그램이 있습니다
그리고 이 println()을 다루고
'Hello Students!'를 출력했습니다
이제부터는 변수를 생성해 보려고 합니다
그리고 변수를 생성하는 두 가지의 방법이 있습니다
val 과 var 입니다
그렇다면 val과 var의 차이는 무엇일까요?
val은 일명 constant variable(상수형 변수)들에만 사용된다는 것인데 이 변수들은
나중에 수정할 수 없고 그 변수의 이름은 immutable(변치 않는) 참조 대상이 됩니다
그러므로 한 번 변수에 값을 할당하면 재할당할 수 없습니다
읽기 전용 또는 상수형 변수인 것입니다
따라서 제가 val을 생성하고 이름은 number1이라고 지은 다음 1이라는 값을 할당한다면
나중에 이 number1을 다시 다른 값으로 할당할 수 없습니다
이런 식으로 사용할 수 없는 것입니다
Compile Time Error(컴파일 타임 에러)가 발생하며 이는 코드를 실행하기도 전에 Android 스튜디오 내에서
에러가 발생하는 것입니다
아무튼 미리 알아두면 좋은 내용입니다
여기까지가 변수를 생성하는 하나의 방법이었습니다
불변하는 변수들, 즉 나중에 수정하거나 재할당할 수 없는 변수들을 위해
사용합니다
이런 식으로 변수에 값을 넣는 것이 값을 "할당"하는 것입니다
좋습니다
이러한 원리였습니다
그럼 만약 나중에 수정할 수 있는 변수를 사용하고 싶다면
이번엔 myAge(내나이)라고 이름을 지어주겠습니다
좋습니다
myAge가 35라고 해봅시다
하지만 나이는 시간이 지나 바뀔 수 있는 것입니다
예를 들어 달력의 날짜에 따라 나이는 매 년마다
바뀔 수 있습니다
그러면
myAge를 덮어쓰고 싶다면 다른 값을 할당해야 할 것입니다 예를 들어
36입니다
역시 Compile Time Error가 발생하는데 이는 Android 스튜디오 IDE가
바로 탐지하여 우리에게 알려주는 것입니다
하지만 myAge = 36이라고 정의된 것이 보입니다
var을 사용하고 있기 때문에 덮어쓸 수 있고 이는 mutable(변동 가능)한 참조 대상이므로 재할당이 가능합니다
첫 할당 이후에 var 변수의 값을 바꿀 수 있습니다
변수를 생성한 곳이 첫 할당이 이뤄지는 곳입니다
이것이 둘의 차이점이었습니다
예를 들어 Pi(원주율)과 같은 변수는 상수입니다
Pi 값은 변하지 않습니다
언제나 같은 값입니다
그럼 val을 사용해야 마땅합니다
Kotlin은 자동으로 val의 사용을 권하는데 여러분이 추후에 값을
바뀌지 않을 것이라고 짐작하기 때문입니다
그러니 나중에 값을 바꿀 예정이라면 var 키워드를 사용해야 합니다
좋습니다
두 가지의 다른 키워드들이었습니다
좋습니다
그러면 이제 이 number1은 지워주겠습니다
이제 myAge만 보입니다
그리고 방금 myAge가 35라는 것을 설명드렸습니다
그리고 여기서 덮어씌운 것인데 한 번 myAge를 출력해 보겠습니다
어떻게 myAge를 출력할까요?
그건 이 println()을 사용해서 myAge를 출력할 수 있습니다
좋습니다
이제 따옴표를 사용하지 않아도 되는데 이제 문자가 아니라 변수를 이 println() 함수에 전달하려는 것이기
때문입니다
println()은 내장된 함수로 우리가 따로 생성하지 않아도 되는 함수입니다
Kotlin이 자동으로 제공하는 코드 속에 포함되어 있습니다
그리고 우리가 Integer(정수)를 전달하면 알아서 할 일을 알고 있습니다
myAge에 마우스를 올려보면 type(종류)를 볼 수 있고 var myAge : Int라고 쓰여있는데
myAge의 데이터 종류가 Int라는 뜻입니다
좋습니다
이 코드를 실행시켜 보겠습니다
하단에서 재실행하는 것이 나을 것 같습니다
더 간단합니다
자 그럼 36을 출력하는데 그것이 현재 시점에서의 myAge이기 때문입니다
코드들이 순차적으로 실행되고 나서 이 println()의 줄이 실행될 때 말입니다
한 줄 한 줄 차례대로 실행이 되는 것인데 물론 다른 줄의 함수를 참조하는 코드가 있다면
상황이 조금 달라집니다
하지만 그건 추후에 살펴볼 내용입니다
이 줄을 복사해 보겠습니다
그리고 println() 함수를 여기 변수를 처음 생성한 직후에 넣어보겠습니다
35로 할당한 시점이며 코드를 재실행해 보겠습니다
이 빈 공간은 지워주겠습니다
그리고 코드를 재실행시켜 보면 35 다음에 36이 출력됩니다
그러니까 이 첫 println()이 실행될 때는myAge가 35였지만
그 후에 값을 재할당함으로 myAge가 36이 되었습니다
이런 식으로 println()을 활용할 수 있으며 방법에 따라 유용하게 사용될 수 있습니다
이번 영상에서는 불변하는 변수와 변할 수 있는 변수들에 대해 살펴보았습니다
var과 val이었는데 var은 변할 수 있고 val은 불변의 성질을 갖습니다
그리고 콘솔에 바로 데이터를 출력하는 방법도 알아보았습니다
다음 영상에서는 데이터 종류를 수동적으로 지정하는 법에 대해 알아볼 예정입니다
좋습니다
다음 영상에서 뵙겠습니다