JiSoo's Devlog
[Dart 시작하기] Section 2 본문
dart의 거의 전부가 object로 이루어져 있다 -> 진정한 객체 지향 언어로 불리는 이유
num 자료형을 사용하면 그 숫자는 integer일 수도 있고 double일 수도 있다
모든 게 object, class로 이루어져 있기 때문에 실제로 자료형 안에 어떤 게 들어있는지 볼 수 있다
void main(){
String name = "jisoo";
bool alive = true;
int age = 12;
double money = 24.22;
num x = 12;
x = 1.1;
}
dart에서 num은 정수와 부동 소수점 숫자를 모두 나타내는 데이터 타입
List를 선언하는 두 가지 방법
void main(){
var numbers = [1, 2, 3, 4];
List<int> num = [2, 3, 4, 5];
numbers.first; //리스트의 첫 번째 요소
numbers.last; //리스트의 마지막 요소
}
dart는 조건문 및 반복을 사용해 컬렉션을 구축하는 데 사용 가능한 collection if와 collection for을 지원한다
collection if는 List를 만들 수 있는데 if로 존재할 수도 안 할 수도 있는 요소를 가지고 만들 수 있다
void main(){
var giveMeFive = true;
var numbers = [
1,
2,
3,
4,
if (giveMeFive) 5,
];
}
void main(){
var giveMeFive = true;
var numbers = [
1,
2,
3,
4,
if (giveMeFive) {
numbers.add(5);
}
];
}
String interpolation은 text에 변수를 추가하는 방법
void main(){
var name = 'jisoo';
var greeting = 'Hello everyone, my name is $name, nice to meet you!';
}
void main(){
var name = 'jisoo';
var age = 10;
var greeting = 'Hello everyone, my name is
$name and I\'m ${age+2}';
print(greeting);
}
단순 변수 값을 담고 싶다면 $달러기호 적고 뒤에 변수 이름만 적어주면 된다
무언가를 계산하고 싶다면 $달러 기호랑 중괄호 적고 계산할 내용을 그 사이에 적어주면 된다
void main(){
var oldFriends = ['jisoo', 'nico'];
var newFriends =[
'lewis',
'ralph',
'darren',
for(var friend in oldFriends) "❤️ $friend",
];
print(newFriends);
}
이렇게 collection for 사용 가능
리스트를 생성하면서 for루프 실행하는 구문
maps는 JavaScript나 TyperScript의 object, pyhon의 dictionary 같은 것
var player = {
1: true,
2: false,
3: true
};
Map<int, bool> player = {
1: true,
2: false,
3: true
};
dart에서는 모든 게 object로부터 생겨서 object는 기본적으로 어떤 자료형이든 될 수 있다
Map 대신 var를 사용해도 되는 대신 컴파일러가 key와 value의 자료형을 유추해 줄 것이다
void main() {
Map<List<int>, bool> player = {
[1, 2, 3, 5]: true,
}
}
원하는 어떤 key든 value든 명시해줄 수 있다
Map은 method와 property를 가지고 있다
void main() {
List<Map<String, Object>> players = [
{'name': 'jisoo', 'xp': 199993.999},
{'name': 'jisoo', 'xp': 199993.999},
];
}
Dart의 class는 굉장히 강력하고 멋진 문법과 쉬운 방법을 가지고 있다
key와 value를 가지는 구조로 object를 만들 때 그것들이 특정 형태를 가질 때 players, movies 혹은 photos 같이 API로 얻은 데이터는 class를 추천한다
var numbers = {1, 2, 3, 4};
Set<int> numbers = {1, 2, 3, 4};
set과 list의 차이는 set에 속한 모든 요소들은 유니크하다는 점
set은 sequence(순서O)
var numbers = {1, 2, 3, 4};
numbers.add(1);
numbers.add(1);
numbers.add(1);
print(numbers);
이렇게 해도 {1, 2, 3, 4}만 나온다
요소가 항상 하나씩만 있어야 되면 set을 사용하면 된다
'App > Dart' 카테고리의 다른 글
[Dart 시작하기] Section 4 (1) | 2024.01.28 |
---|---|
[Dart 시작하기] Section 3 (0) | 2024.01.24 |
[Dart 시작하기] Section 1 (0) | 2024.01.16 |