Dart에서 list를 작성하는 방법은 두개이다.
var 변수명 = [...]
List 변수명 = [...]
그리고 Dart에서는 특별한 기능을 제공한다. collection if
와 collection for
라는 기능!
collection if를 사용해서 list를 작성해보자
void main() {
var giveMeFive = true;
var numbers = [
1,
2,
3,
4,
if (giveMeFive) 5,
];
print(numbers);
}
list안에서 if문을 쓸수 있는것이 collection if인듯? giveMeFive를 true값으로 주고 numbers라는 list안에서 만약 if문이 true면 5라는 값을 달라고 요청하는 코드이다. 그리고 print해보면
[1, 2, 3, 4, 5]
Exited.
5가 list에 추가된것을 볼수 있다. 오 신기!
collection if는 간단하고 쓰기에 편할것 같다.
다음으로 colletion for 음...예시를 보는게 쉬울것 같다!
void main() {
var MyColor = ['red', 'pink'];
var Color = [
'orange',
'brown',
'black',
for(var newColor in MyColor) "💗 $newColor",
];
print(Color);
}
MyColor의 변수에 내가 좋아하는 색을 적고 Color에는 그냥 색들을 적었다. 그리고 for문을 통해서 MyColor에 특별히 💗이모지를 앞에 추가하도록 했다.
여기서 colletion for가 사용된다.
기존에 있던 Color라는 리스트에서 MyColor리스트가 for문으로 반복적으로 호출되어 추가되는 역할을 한다.
=> 기존에 있던 리스트에서 다른 리스트가 반복적으로 호출되어 기존 리스트에 새롭게 추가된다는 의미!
[orange, brown, black, 💗 red, 💗 pink]
Exited.
Color는 그냥 출력되고 MyColor에 있던 객체들만 앞에 이모지가 붙었다ㅎㅎ
String Interpolation은 text에 변수를 추가하는 방법이다.
void main() {
var name = 'bunny';
var greeting = 'My name is $name';
print(greeting);
}
여기서 $
표시 뒤에 추가하고 싶은 변수명을 적어줘야 원하는 문장이 출력된다.
My name is bunny
Exited.
근데 이제 이건 변수가 존재할때...
만약 변수가 변화하면?
void main() {
var name = 'bunny';
var age = 20;
var greeting = 'My name is $name, I am ${age + 2}';
print(greeting);
}
age라는 변수가 있는데 여기에 2를 더해서 결과를 출력하고 싶을때...!
그럴땐 ${age + 2}
로 해결~ {}
로 계산을 해주면 된다는
My name is bunny, I am 22
Exited.