inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)

15강. 코틀린에서 배열과 컬렉션을 다루는 방법

setOf,mutableSetOf 기본 구현체가 LinkedHashSet이면

해결된 질문

513

티벳로보

작성한 질문수 48

1

HashSet은 순서를 보장하지않고

LinkedHashSet은 node로 순서를

보장하는걸로 알고 있습니다.

 

코틀린에서 타고 들어가면

@SinceKotlin("1.1") public actual typealias LinkedHashSet<E> = java.util.LinkedHashSet<E>

이렇게 나와서 그대로 사용하는 거 같더라구요

 

그래서 setOf 나 mutableSetOf는

순서를 보장하는 Set이라고 생각해도 될까요?

java kotlin 객체지향

답변 1

1

최태현

안녕하세요, yousd179님!! 좋은 질문 감사드립니다!! 😊

결론부터 말씀드리면 네네 맞습니다!! 아직까지 코틀린 표준 라이브러리에서는 setOf 또는 mutableSetOfLinkedHashSet 을 가리키므로 순서가 보장된다고 생각하셔도 됩니다.

 

하지만, setOf() 가 가리키는 Set의 구현타입이 코틀린 라이브러리 상에서 혹시 변경될 수도 있으니, 만약 '순서보장' 로직이 반드시 요구되는 Set이 필요하시다면, LinkedHashSet 또는 순서보장 집합 (ex. guava 안에 있는 Set 구현체) 코드를 그대로 사용하시는 것도 방법입니다!! Kotlin에서는 Java 라이브러리 코드를 마음껏 가져다 쓰실 수 있으니까요! 👍👍

 

감사합니다!! 🙏

또 궁금하신 점 있으시다면 편하게 질문 남겨주세요!!! 🙇

0

티벳로보

감사합니다.

강의를 볼때마다 정말 많이 반성을 많이 하고 있습니다.

알고 있는 자바 내용인데 동영상을 멈추고 설명을 혼자 해보려니까 막히는게 많더라구요.

앞으로도 좋은 강의 부탁드려요!!

수업노트

0

58

1

싱글톤과 스프링

0

74

2

get() = 3

0

52

2

강사님

0

75

1

강의 복습하면서 생긴 질문

1

97

1

Kotlin과 Java의 현업에서의 활용

0

129

2

data class와 자바의 Lombok을 이용한 DTO 클래스 차이 질문

0

75

1

코틀린에서 상속 시, 주의점에 대한 질문

1

100

3

내용 이해 질문

0

58

1

자바와 코틀린의 함수형 프로그래밍,

1

92

1

플랫폼 타입 설명 문의

2

78

2

널 아님 단언 관련 질문

0

86

1

강의 중 질문

0

81

2

범위 비교 질문

1

93

2

타입캐스팅 궁금한점 질문드립니다.

1

241

2

코틀린 val 질문

0

168

2

완강 후 Kotlin 이런저런 질문 드려봅니다!

3

411

2

확장함수 스타일 질문

0

140

2

확장 프로퍼티 질문

1

158

1

update 함수를 만든다는게 어떤 의미인지 예시가 궁금합니다!

1

283

1

java class의 NotNull 어노테이션 인식

1

264

1

[16강] 확장함수 관련 질문입니다!

1

134

2

리턴타입 사용시 any를 사용해도 괜찮은가요?

1

142

1

안녕하세요 scope function 에 receiver 가 없는 경우

1

172

1