21. 11. 12.
- Could -
이 글은 프로그래밍 입문을 Flutter 때문에 Dart로 시작하는 사람들을 위한 글입니다.
프로그래밍 언어가 가지고 있는 기본 컨셉 자체를 Dart라는 언어를 통해 설명하고,
많은 분들이 Flutter를 위해 학습한다고 생각해, 추후 Flutter 학습에 도움이 되는 방향으로 작성되었습니다.
1. 형변환(Casting)이란?
2. 형변환 방법
1. 형변환(Casting)이란?
앞서 데이터타입을 배웠는데, 한번 지정한 데이터타입을 변경해야할 경우가 생긴다. 문자열을 숫자로 바꾸거나, 리스트로 변환해야할 수도, 맵으로 변환을 해야하는 경우도 생긴다. 이런 경우 데이터타입을 변환시키는 걸 캐스팅 한다고 그런다.
https://ko.wikipedia.org/wiki/%ED%98%95_%EB%B3%80%ED%99%98
2. 형변환 방법
메소드 활용
int width = 140;
width.toString();
변수명 뒤에 .을 찍고 나오는 메소드들을 활용하는 방식이다. 일반적으로 숫자 데이터를 문자열로 바꾸고 싶을때 많이 사용한다. toString(), toList() 등의 방식이 있다. 위의 예제에서 width의 데이터타입은 int이다. width.toString()의 데이터타입은 String이 된다.
cf) width.toString() 을 했다고 width의 데이터타입이 String으로 변하지는 않는다.
위에서는 변한다고 했다가, 지금은 또 변하지 않는다고 하니 무슨 소리인가 싶겠지만. width.toString()의 데이터타입은 String이고, width의 데이터타입은 int이다.
모든 데이터타입의 변환들이 .하나 찍고 메소드로 구현이 되면 좋겠지만 전부 지원하지는 않는다. 메소드를 찾아보고 없다면 다른 방식으로 형변환 하는 방법을 알아봐야한다.
parse 메소드 활용
문자데이터를 숫자데이터로 변환하고 싶을때 사용하는 방법이다.
String height = '180';
int.parse(height);
위의 코드는 height를 int형으로 바꾸는 코드이다. toString때와는 반대로 변환하고자하는 타입을 적고, parse메소드의 아규먼트로 height를 넣어준다. double.parse(), Uri.parse() 등 여러 형변환을 지원한다.
as 연산자
as 연산자는 앞에 적은 데이터를 뒤에 적은 타입으로 변환시키라는 명령어이다. 하지만 아무때나 막 가져다 쓸 수 있는 녀석은 아니다.
이 부분의 이해를 위해서는 type에 대한 깊은 이해가 필요하므로, 궁금하다면 추가로 구글링을 해보도록 하고, 그렇지 않다면 실제 코드에서 만나게되는 날 유심히 살펴보기로 약속하자.
'Flutter > Dart 입문' 카테고리의 다른 글
[Dart] 16. 제네릭(Generic) (0) | 2021.11.15 |
---|---|
[Dart] 15. 삼항연산자 - Ternary Operator (0) | 2021.11.15 |
[Dart] 13. 예외처리 - try, catch 구문 (0) | 2021.11.12 |
[Dart] 12. final vs. const (7) | 2021.11.06 |
[Dart] 11. Null Safety (0) | 2021.11.04 |
댓글