inblog logo
|
개발자의 일상
    다트(Dart)

    다트(Dart) : 자료형(Type) / 변수(Variable)

    #dart #자료형 # 변수
    홍정환's avatar
    홍정환
    Jul 29, 2024
    다트(Dart) : 자료형(Type) / 변수(Variable)
    Contents
    기본자료형var 자료형dynamic 자료형String 자료형int 자료형double 자료형bool 자료형DateTime 자료형컬렉션 자료형변수 선언 방법nullable / non-nullablefinal / constString내에서 변수사용 : ${변수}

    기본자료형

    var 자료형

    • 특정 자료형이 아니다.
    • 여러가지 자료형을 사용할 수 있다.
    notion image
     
    • 하지만 중간에 자료형을 변환할 수 없다.
    • name변수에 “lee’s” 라는 string 값을 넣어주었을때는 에러가 없지만
    • 그 다음 1 이라는 int 값을 넣었을때 에러가 발생한다.
    notion image
     

    dynamic 자료형

    • dynamic : var과 비슷하지만 차이점은 여러가지 형으로 변경이 가능
    • var는 처음 선언할때 형이 정해지면 나중에 변경이 안됨
    • name이라는 dynamic 변수에 처음에는 string형으로 나중에는 int형으로 값을 넣어도 에러가 없다.
    notion image
     

    String 자료형

    • String : 문자형
    notion image
     

    int 자료형

    • int : 정수형
    notion image
     

    double 자료형

    • double : 실수형, 소수점이 들어가는 숫자
    notion image
     

    bool 자료형

    • bool : Boolean형(true, false)
    notion image
     

    DateTime 자료형

    • DateTime : 날짜 및 시간
    • DateTime.now() : 현재시간을 반환하는 함수
    • DateTime형을 선언할 때 final은 사용할 수 있지만, const는 사용할 수 없다.
    • DateTime.now()는 runtime때 값이 결정된다.
    notion image
     
    💡
    final과 달리 const는 실행시에 값이 결정되어 있어야 하는데, DateTime.now()는 실행시키는 시점이 아니라, 실행되는 중간에 값이 결정되기 때문에 아래처럼 에러 발생, 주의 필요
    notion image
     
     

    컬렉션 자료형

    • 컬렉션은 여러 값을 하나의 변수에 저장할 수 있는 타입
    • List : 여러값을 순서대로 저장
    • Map : 특정 키값을 기반으로 빠르게 값을 검색
    • Set : 중복된 데이터 제가할 때 사용
    • 컬렉션 타입은 서로의 타입으로 자유롭게 형변환이 가능하다는 매우 큰 장점이 있다.
     
     
    🤖
    리스트(List) 자료형
    🙀
    Map 자료형
    🤣
    Set 자료형
     

     
     

    변수 선언 방법

    • 일반적 선언방법
    • 자료형 변수명 = 값;
    notion image
     

    nullable / non-nullable

    • nullable : null값이 포함될 수 있는 자료형
    • non-nullable : null값이 포함될 수 없는 자료형
    • 모든 자료형은 기본적으로 non-nullable이다. 아래 예를보면 name변수에 null값을 지정시 에러 발생
    notion image
    • ? : non-nullable → nullable 전환 : 자료형 선언시 “?”를 붙이면 된다.
    • 아래 예와 같이 name변수 선언시 자료형 끝에 “?”를 붙여주면 name변수에 Null을 입력해도 에러가 나지 않는다.
    notion image
    • ! : nullable → non-nullable 지정(명시)
    • nullable 변수이더라도, 중간에 “!”를 붙여주면 Null 입력 못하게 지정
    • 아래와 같이 nullable 변수 name을 name!으로 print해보면 현재 null값이 들어 있어 에러 발생
    notion image
     

    final / const

    • 공통점 : 값을 한번 선언하면 더이상 변경할 수 없다.
    notion image
    • 변수형을 생략할 수 있어 var의 역할까지 한다.
    notion image
    • 차이점 : final은 빌드타임에 값을 몰라도 된다.
      • const는 빌드타임에 값을 알아야 한다.
    notion image
    • DateTime : 날짜형, final은 선언시에 명확한 값을 몰라도 사용가능, 위 예제에서 DateTime.now()는 런타임시에 생성되므로 값이 지정되지 않았으나 final 사용 가능,
    • const는 데이터 선언시에 값이 명확해야되므로, DateTime.now()사용 불가
     

    String내에서 변수사용 : ${변수}

    • Python의 fstring과 비슷
    • 사용하는 방법 : ${변수}, ${변수.함수}, $변수
    • 변수에 dot(.)을 사용하려면 {} 중괄호를 반드시 써야 한다.
    • dot(.)을 이용하지 않으면 중괄호 생략 가능하다.
    notion image
     
     
     
    Share article
    Contents
    기본자료형var 자료형dynamic 자료형String 자료형int 자료형double 자료형bool 자료형DateTime 자료형컬렉션 자료형변수 선언 방법nullable / non-nullablefinal / constString내에서 변수사용 : ${변수}

    개발자의 일상

    RSS·Powered by Inblog