stack   3년 전

1920번 문제 풀다가 아래와 같이 컴파일 에러가 발생했는데,

제가 잘못한건지 BOJ에서 지원이 잘 안되는 건지 모르겠습니다


한번 검토 부탁드립니다.

Main.kt:2:27: error: unresolved reference: HashSet
import kotlin.collections.HashSet
                          ^

gallopsys   3년 전

현재 백준 온라인 저지에서 사용하고 있는 Kotlin 버전은 Kotlin 1.0.5-2인데, 최근에는 1.1로 업데이트를 했었죠...


이전의 Kotlin은 지금보다 살짝 부족한 형태였는데, 대표적으로 collections가 Kotlin 표준 라이브러리에 종속되지 않았다는 점입니다.

그러니까 ArrayList나 HashSet, LinkedHashSet, HashMap, LinkedHashMap과 같은 것들이 Java에 종속적이었다는 소리죠.


최근 버전인 Kotlin 1.1에서는 이러한 collections가 kotlin.collections 패키지에 추가되었습니다. 그래서 1.0버전을 사용하고 있는 채점 환경에서는 컴파일 에러를 내놓을 수 밖에요.


아래 내용은 Kotlin 1.1 때 그와 관련한 업데이트 내용입니다. 영어긴 하지만.. 한 번 참고해보시길 바라요.


Standard library unification

The standard library unification process for different platforms is moving forward. We have started unifying exception types in 1.1-M2 and now some more common types, which are supported on all platforms, are available in kotlin.* packages, and are imported by default. These include:

  • ArrayListHashSetLinkedHashSetHashMapLinkedHashMap in kotlin.collections
  • Appendable and StringBuilder in kotlin.text
  • Comparator in kotlin.comparisons

On JVM these are just typealiases of the good old types from java.util and java.lang

stack   3년 전

감사합니다. 많은 도움이 되었습니다 !!

댓글을 작성하려면 로그인해야 합니다.