본문 바로가기

FE개발 공부

3. Dart의 데이터

dart의 여러 데이터 타입에 대해 학습했다

 

  • 기본 데이터 타입

기본 데이터 타입들은 클래스로 이루어졌다.

보통 num 이라는 클래스를 상속받아서 만들어졌다.

 

따라서 num x = 12; 

           x = 1.1;  이런 식도 가능하다.

 

  • List

 

void main(){
	var numbers = [1, 2, 3, 4]; //정수형 리스트 생성
    var giveMeFive = true;
    List<int> numbers = [1,, 2, 3, 4]; // 이렇게 선언해도 가능!
    
    var numbers = [
    1,
    2,
    3,
    4,
    if(giveMeFive) 5, 
    //collection if => giveMeFive의 값이 true일 경우에 리스트에 5라는 요소가 추가된다!
    ]
    
    //if(giveMeFive){
    	numbers.add(5) //이와 같은 기능을 간단하게 표현하는 것이다.
    }
}

 

collection if 기능으로 간편하게 값을 추가할 수 있다!

 

  • String interpolation

string interpolatioin은 text에 변수를 추가하는 방법이다.

$ 달러 기호 뒤에 변수를 바로 붙여서 사용할 수 있다.

 

단순 변수 사용은 달러 기호 바로 뒤에 사용한다.

하지만 계산식을 사용하려면 ${ 내용..} 이런식으로 사용한다.

 

void main(){
	var name = 'migi';
    var age = 20;
    var greeting = "Hello my name is $name, I'm ${age + 3}!";
    print(greeting);
    
    //출력 결과: Hello my name is migi, I'm 23!
}

 

  • collection for

기존 리스트를 새 리스트에 추가할 수 있다.

 

void main(){
	var oldFriends = ['jj', 'mm',];
    var newFriends = ['kk', 'll', for(var friend in oldFriends) "$friend",];
}//new Friends를 출력하면 같이 나온다.

 

add를 간단하게 하는 느낌으로 이해하면 쉽다.

 

  • map

map<key, value> 변수명  이런 식으로 선언된다.

그렇지만 사용할 때는 var를 이용한다.

 

컴파일러가 판별한 것을 보면 value가 object일 때가 있는데

이것은 어떤 타입이든 될 수 있다는 뜻이다.

void main(){
	var player = {
    	'name' : 'ss';
        'xp' : 19.1;
    } //컴파일러가 자동으로 map의 자료형을 판단해준다.
}

void main(){
	Map<List<int>, bool> player = {
    	[1, 2, 3, 5]: true;
    }//원하는 어떤 key나 value를 명시해줄 수 있다.
} player에 대한 메소드도 존재한다.

 

 

  • set

set은 sequence 즉, 순서가 있다는 뜻이다.

list와 괄호 모양은 다르게 선언해야 한다.

 

void main(){
	var numbers = {1, 2, 3, 4};
    
    numbers.add(1);
    numbers.add(1);
    
    //추가해도 출력하면 1은 그대로 한 개이다.
}

 

 

요소가 항상 1개씩 있어야 한다면 set을 사용하면 된다.

 


 

지금까지 자주 쓰이는 자료구조에 대해서 알아보았다.

비슷하긴 하지만 좀 더 간편하게 쓸 수 있는 기능들이 많다.

다음에는 함수에 대해서 기록해봐야겠다!

'FE개발 공부' 카테고리의 다른 글

6. Flutter 소개  (0) 2025.10.02
5. Dart의 클래스  (0) 2025.09.27
4. Dart의 함수  (0) 2025.09.26
2. Dart의 다양한 변수들  (0) 2025.09.24
1. Dart 소개  (0) 2025.09.24