본문 바로가기
프로그래밍 언어/Dart

[Dart] 자료형

by BK0625 2023. 2. 22.
반응형

Dart는 객체지향언어이다. 자바처럼 모든게 class로 이루어져 있고 완벽한 객체지향을 지향한다. 그러면서도 TypeScript 같은 새로운 언어들과의 유사성도 보인다. Dart를 공부한 내용을 정리해보려고 한다.

 

자료형

기본적인 자료형

 

기본적인 자료형들은 String, bool, int, double 등이 있다 String은 문자열, bool은 true/false, int는 정수, double은 실수 자료형이다. 여기서 특기할만한 점이 있는데 바로 num 자료형이다. Dart는 모두 class로 이루어져있고 객체지향언어이기 때문에 상속 역시 존재한다. 저 int와 double 자료형 역시 class 이고 해당 자료형은 모두 num class를 상속 받는다. 그 말인 즉슨 num 자료형은 실수,정수 둘 다 사용할 수 있다.

 

 

 

 

리스트

 

Dart에서의 리스트이다. 그냥 처음 방식대로 자바스크립트처럼 []을 열어서 사용해줄 수도 있고 밑에 방식처럼 타입을 직접적으로 명시해줄 수도 있다. 그리고 Dart에서는 다양한 리스트 관련 함수들을 제공한다. 예를 들어 리스트.first는 리스트의 가장 첫번째 요소를 리턴해준다.

 

 

 

Collection if 는 경우에 따라 존재할 수도 아닐 수도 있는 요소를 만들 수 있다. 위 코드에서 giveMeFive가 true이기 때문에 조건이 만족하여 5가 추가 된다. 따라서 필요와 경우에 따라 요소를 추가할 수 있다.

 

만약 false라면??
5가 추가되지 않는다

 

String imterpolation

 

text에 변수를 추가하는 방법으로 Dart에서는 $ 기호를 사용한다. 어떤 문자열을 ""나 ''로 감싸고 추가하고 싶은 변수 앞에 $ 표시로 해당 위치에 넣으면 text를 추가할 수 있다. 만약 어떠한 연산을 해서 추가하고 싶으면 {}로 감싸고 그 안에 연산을 한 뒤에 $ 기호를 붙여주면 된다.

 

 

Collection for

 

 

Collection for은 리스트를 합칠 때 매우 유용하다. 합치고 싶은 리스트가 있을 때 위 코드 처럼 for(var code in codes) code을 돌려서 리스트를 합칠 수 있다.

 

 

 

Map

 

 

Dart에서의 Map은 자바스크립트의 object와 같다. 제일 위에 player map은 Map<String,object> 형식인데 Dart에서의 object는 타입스크립트에서의 any 타입이라고 보면 된다. 즉 어떤 타입이든 다 들어올 수 있다.

 

두번 째 player처럼 타입을 직접 명시를 해줄 수도 있고 players 처럼 Map 배열 역시 가능하다.

 

 

Sets

 

 

Sets는 안에 값이 유니크하기 원할 때 사용한다 선언 방식은 위 이미지와 같은데 Sets을 선언하게 되면 가각의 값이 유니크한 값을 가지기 때문에 만약 있는 요소를 추가하려 해도 일반 리스트와는 달리 값이 변하지 않는다. 즉 setsEx.add(1)을 한다고 해도 {1,2,3,4,1}이 되는게 아니라 {1,2,3,4}이다. 요소가 항상 하나씩만 있어야 할 때 사용할 수 있다.

반응형

'프로그래밍 언어 > Dart' 카테고리의 다른 글

[Dart] 추상화 클래스와 상속, Mixin  (0) 2023.10.25
[Dart] Cascade Notation  (0) 2023.10.25
[Dart] 클래스 - 클래스와 생성자  (2) 2023.10.25
[Dart] 함수  (0) 2023.02.26
[Dart] Dart를 시작해보자  (0) 2023.02.21