[Dart] #2 Data Types

ZenTechie·2023년 8월 17일
0

Dart

목록 보기
2/4
post-thumbnail

기본 데이터 타입

아래는 Dart가 제공하는 기본 데이터 타입의 종류이다.

void main() {
	String s = 'string';
    bool b = false;
    int i = 26;
    double d = 64.32
    num n1 = 12
    num n2 = 1.23
}

num은 int와 double의 속성을 모두 가지고 있다. 실수, 정수를 모두 저장할 수 있는 타입이다.


리스트

리스트 생성 방법

  • [] 키워드
  • List<> 키워드
void main() {
  var _list = [1, 2, 3,];
  List<int> _list2 = [1, 2, 3,];
  List<String> _list3 = ['a', 'b', 'c',];
}

collection if, collection for

dart의 list는 collection if와 collection for을 지원한다.

collection if

if로 존재할 수도 안할 수도 있는 요소를 가지고 만들 수 있다.

void main() {
  bool hasNoFour = true;
  var _list = [
    1,
    2,
    3,
    if (hasNoFour) 4,
  ];
}

위의 코드는 아래의 코드와 같은 기능을 한다.

void main() {
  bool hasNoFour = true;
  var _list = [
    1,
    2,
    3,
  ];
  if (hasNoFour) _list.add(4);
}

collection for

collection if와 비슷한 기능을 수행한다.

void main() {
  var favoritesFood = [
    'chicken',
    'pizza',
    'burger',
  ];
  var newFavoritesFood = [
    'noodle',
    'rice',
    for (var food in favoritesFood) 'Love $food',
  ];
  print(newFavoritesFood);
}

String Interpolation

문자열 안에 변수를 추가하고 싶을 때, 변수 앞에 $ 키워드를 붙이면 된다.

void main() {
  var name = 'John';
  var introduction = "Hello, $name. Nice to meet you.";
}

만약, 계산식을 넣고 싶다면, ${}를 사용하면 된다.

void main() {
  var num = 19;
  var introduction = "I'm ${num + 7}";
}

Maps

JS, TS의 object 그리고 Python의 dictionary와 같은 기능을 수행한다.

void main() {
  var myInfo = {
    'age': 26,
    'name': 'zenTechie',
    'havePotential': true,
    'skills': ['Flutter', 'Dart', 'Android', 'Java', 'Kotlin', 'Swift'],
  };
  print(myInfo);
}

또는 아래와 같이 Map<Key, Value> 키워드를 사용하여 만들 수도 있다.

void main() {
  Map<String, Object> myInfo = {
    'age': 26,
    'name': 'zenTechie',
    'havePotential': true,
    'skills': ['Flutter', 'Dart', 'Android', 'Java', 'Kotlin', 'Swift'],
  };
}

또는, Map 생성자를 사용할 수도 있다.

void main() {
  var myInfo = Map();
  myInfo['name'] = 'John';
  myInfo['age'] = 30;
  myInfo['height'] = 1.8;
}

Sets

Python의 Tuple, JS의 Set과 같다.

모든 원소들은 유니크한 특징을 가진다.(즉, 중복되는 원소가 있으면 안된다.)

void main() {
  var _set = {'a', 'b', 'c',}
  Set<int> _set2 = {1, 2, 3,}
}
profile
데브코스 진행 중.. ~ 2024.03

0개의 댓글