앞에서 변수를 선언하는 방법에 대해 알아보면서 데이터형에서도 알아봤습니다.
데이터형의 종류는 다음과 같습니다.
문자열, 숫자, 불린, 추론형
앞에서 이미 학습한 것도 있고 처음보는 것도 있습니다.
어려워하지 마시고 저랑 하나씩 알아갑시다.
문자열을 선언할 때는 String를 사용합니다. 자료형중에 유일하게 첫글자가 대문자입니다.
String haro = 'hello';
그럼 print()문을 사용해 출력해봅시다. print()의 괄호안에 변수명을 넣으면 변수의 값이 출력됩니다.
void main() { String haro = 'hello'; print(haro); }
정수형 변수를 선언할 때는 int를 사용합니다.
int myNum = 100;
그럼 print()문을 사용해 출력해봅시다. print()의 괄호안에 변수명을 넣으면 변수의 값이 출력됩니다.
void main() { int myNum = 100; print(myNum); }
실수형 변수를 선언할 때는 double를 사용합니다.
double myNum = 100.11;
그럼 print()문을 사용해 출력해봅시다. print()의 괄호안에 변수명을 넣으면 변수의 값이 출력됩니다.
void main() { double myNum = 100.11; print(myNum); }
앞에서 우리가 변수는 변하는 값이라고 했지요. 그래서 처음에 정수를 대입한 변수에 실수를 대입해야하는 상황이 올 수 있습니다.
이럴땐 데이터형을 num을 사용해야합니다. num은 정수와 실수 모두 대입할 수 있는 데이터형입니다.
num은 정수와 실수 모두 대입할 수 있는 데이터형입니다.
즉 다른값을 대입하더라도 정수만 대입하는 변수라면 int를 사용하지만 실수가 대입 될 가능성이 있는 변수라면 num을 사용해야합니다.
그럼 이번엔 num으로 변수를 선언하고 정수를 대입한 후 실수를 대입해 봅시다.
void main() { num myNum = 100; print(myNum); myNum = 100.111; print(myNum); }
논리형은 true(참), false(거짓)값을 담는 데이터형입니다.
bool myBool = true;
true, false 두가지 값만 대입할 수 있는 데이터형입니다.
그럼 print()문을 사용해 출력해봅시다. print()의 괄호안에 변수명을 넣으면 변수의 값이 출력됩니다.
void main() { bool myBool = true; print(myBool); }
이제 추론형에 대해 알아볼게요.
추론형은 2가지가 있습니다. var, dynamic
먼저 var에 대해 알아볼게요.
추론형.. 말이 좀 어렵게 느껴질 수 있습니다.
한마디로 데이터형이 우리가 대입한 값에 따라 자동으로 정해집니다.
정수를 대입하면 데이터형은 int
실수를 대입하면 데이터형은 double
boolean를 대입하면 데이터형은 bool
문자를 대입하면 데이터형은 String
값에 따라 자동으로 데이터형을 정해집니다.
void main() { var myNum = 111; print(myNum); }
주의할 점은 한번 데이터형이 정해지면 그 이후 값을 대입할 때 같은 데이터형의 값을 대입해야합니다.
즉 위의 코드는 정수형 데이터를 입력해서 데이터형이 정수형으로 정해진 상태입니다.
이후에 실수형이나 문자형 데이터를 대입하면 오류가 발생합니다.
값을 다시 대입하려면 같은 데이터형 값을 대입해야합니다.
void main() { var myNum = 111; print(myNum); myNum = 222; print(myNum); }
값을 대입 후 같은 데이터형의 값을 대입했습니다. 결과가 잘 나타납니다.
이번엔 실수를 대입 해 볼게요.
void main() { var myNum = 111; print(myNum); myNum = 222.123; print(myNum); }
이번엔 오류가 발생합니다.
다음에 알아 볼 dynamic 데이터형은 데이터형이 다른 값을 대입하면 변수의 데이터형이 변경됩니다.
dynamic는 var와 달리 변수 선언 후에 값을 다른 데이터형의 값을 변경할 수 있습니다.
즉 처음에 정수 100을 대입했는데 이후에 100.1을 대입할 수 있고 이후에 true나 false를 대입할 수 있고 또 문자열도 대입할 수 있습니다.
void main() { dynamic myNum = 111; print(myNum); myNum = 222.123; print(myNum); myNum = 'everdevel'; print(myNum); myNum = true; print(myNum); }
자 이렇게 해서 다트의 데이터형에 대해 알아봤습니다.
다음 시간에는 정말로 dynamic으로 선언한 변수의 데이터형이 변경되었는지 확인 해 봅시다.
봐주셔서 감사합니다. 문의 또는 잘못된 설명은 아래의 댓글에 부탁드립니다.
당신의 작은 누름이 저에게는 큰 희망이 됩니다.
댓글 0개
정렬기준