inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드팩토리] [입문] Dart 언어 4시간만에 완전정복

Dart #3 Functional Programming 함수형 프로그래밍

강사님 덕에 요즘 열심히 수강하고 있습니다

102

김승현

작성한 질문수 1

0

2년 전에 c언어를 배웠었는데 다트 언어는 그에 비해 너무 친절해서 행간에 추론이 필요한 부분이 있네요..

사진 상 print(newBlackPink.toList());나 print(newBlackPink2);가 value는 똑같은데 괄호만 종류가 다른데요, 이때 toList를 안 먹이면 Map으로 나오는 건지, 그렇다면 final과 newBlackPink사이에는 Map이 생략되어 있는건지 궁금합니다. 아니라면 어째서 괄호의 종류가 다르게 나오는 건지 알려주세요!

요지는 newBlackPink2의 자료형이 궁금합니다.

flutter 함수형-프로그래밍 객체지향

답변 2

1

코드팩토리

안녕하세요!

전체 코드를 보여주지 않으시면 정확한 답변을 드리기 어렵습니다.

하지만 타입을 출력 해보는건 변수에 .runtimeType을 넣어보면 쉽게 출력이 가능합니다.

말씀하신 질문을 조금 더 정확히 파악 할 수 있는 코드 문맥을 제공해주시면 (제가 복붙해서 실행 해볼 수 있는) 다시한번 답변 드리겠습니다.

감사합니다!

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 김승현님, 질문 주셔서 감사합니다!

Dart 언어에서 final을 사용하는 경우, 변수의 타입은 Dart의 타입 추론 기능에 의해 자동으로 유추됩니다. SetList는 Dart에서 서로 다른 컬렉션 타입이며, Set은 중복을 허용하지 않지만 List는 허용합니다.

print(newBlackPink.toList());print(newBlackPink2); 두 표현이 결과적으로 출력되는 값은 같을 수 있지만, 이 두 표현의 데이터 구조는 다를 수 있습니다:
- newBlackPink.toList(): SetList로 변환하기 때문에, 중복이 제거된 후 순서가 중요할 때 사용됩니다.
- newBlackPink2: 변수의 선언 시 타입을 명시하지 않았다면, 타입 추론에 의해 Set으로 간주될 가능성이 큽니다. 만약 Set으로 초기화된다면, 내부적으로 중복을 허용하지 않습니다.

즉, newBlackPink2의 자료형은 실제 코드가 어떤 초기화 방식을 사용하는지에 따라 달라질 수 있습니다. 그렇기 때문에 Set인지 List인지 직접 코드를 확인하거나 디버깅하여 확인하는 것이 좋습니다.

더 자세한 내용이나 구현 예제를 보신다면, 변수가 실제로 어떤 타입인지 더 명확히 이해하실 수 있습니다. 유사한 질문에 대한 질문 링크를 참조하시면 도움이 되실 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

자료형(실수) 출력 결과 문의

0

55

1

fold 함수 문법이 업데이트 된 것 같은데 맞을까요?

0

47

1

쿠폰 유효기간이 경과했다고 하네요 ㅠㅠ

0

80

2

Flutter강좌에 대한 질문이 있습니다.

0

276

2

Set 인덱스 접근 질문입니다

0

187

2

void 궁금한점이 있습니다!

0

160

1

다트 변수 연산 질문

0

138

1

다트 변수 이름 규칙 질문입니다

0

206

2

4강애싱크 프로그래밍에서 12:46에서

0

116

1

궁금한 점이 있습니다!

0

258

2

쿠폰발급이 안되네요 ;;

0

317

2

밑에 질문 사진첨부해서 다시 질문드려요~

0

313

2

클래스안에서 함수 넣을때 요

0

221

2

전 왜 이상태에서 마지막에 Status

0

306

2

4강 마지막 yield* -> yield

0

259

1

쿠폰 적용 안되는데 혹시 수량이 정해져 있는건가요?

0

374

1

toSet(), Set.of(), Set.from() 차이점

0

569

1

안드로이드 스튜디오 에뮬레이터 권장사양

0

543

2

for loop

0

408

1

list map set

1

394

1

2강부터 너무 어렵네요

1

747

2

상속받은 클래스의 named parameter 사용방법이 궁금합니다

1

468

1

진도 관련 문의드립니다.

0

610

1

return과 print의 차이점을 모르겠어요.

1

782

2