Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Linux
- gradle
- dynamic programming
- HBase
- Java
- leetcode
- scala
- golang
- 동적프로그래밍
- 파이썬
- go
- 스칼라
- Python
- 알고리즘
- 튜토리얼
- DP
- Go언어
- zookeeper
- 문제풀이
- 자바
- 주키퍼
- 코드워
- docker
- codewars
- OOM
- 프로그래머스
- programmers
- redis
- 리눅스
- boj
Archives
- Today
- Total
파이문
[Scala] 자바 컬렉션 스칼라에서 사용하기 본문
728x90
자바 컬렉션 스칼라에서 사용하기
scala 2.11 에는 TreeMap 이 없어서 자바의 java.util.TreeMap 을 사용하려고 하였다. 그러나 java.util.TreeMap 에는 map멤버가 없었다. 자바의 컬렉션도 스칼라 처럼 사용하고 싶었고 그래서 찾아보니 아래의 패키지를 사용하면 되었다.
import scala.collection.JavaConversions._
import scala.collection.JavaConverters._
JavaConversions 를 쓰면 자동으로 컬렉션에서 scala 의 컬렉션 처럼 사용할 수 있게 되고 (예를 들면 map 이라든지 foreach 같은 멤버 함수들) JavaConverters를 쓰면 기존의 컬렉션 뒤에 asScala 를 붙여서 사용하면 된다.
scala> val k = new java.util.TreeMap[String, Integer]()
k: java.util.TreeMap[String,Integer] = {}
scala> import scala.collection.JavaConverters._
import scala.collection.JavaConverters._
scala> k.put("a", 1)
res0: Integer = null
scala> k.put("2", 1)
res1: Integer = null
scala> k.put("3", 2)
res3: Integer = null
scala> k.asScala.map {
| x =>
| println(x)
| }
(2,1)
(3,2)
(a,1)
res4: scala.collection.mutable.Iterable[Unit] = ArrayBuffer((), (), ())
scala> import scala.collection.JavaConversions._
import scala.collection.JavaConversions._
scala> k.map {x=>println(x)}
<console>:19: warning: object JavaConversions in package collection is deprecated (since 2.12.0): use JavaConverters
k.map {x=>println(x)}
^
(2,1)
(3,2)
(a,1)
res5: scala.collection.mutable.Iterable[Unit] = ArrayBuffer((), (), ())
2.12.X 부터는 JavaConversion 은 중단되었으므로 JavaConverters의 사용을 권장하고 있다.
'TIL' 카테고리의 다른 글
[Python] xn-- 과 같이 시작하는 URL 을 사람이 볼 수 있는 문자로 변경하기 (0) | 2019.05.09 |
---|---|
[Scala] 스칼라에서 for loop 2개 동시에 순회하기 (0) | 2019.05.09 |
[C++] C++가 상수의 데이터형을 결정하는 방법 (0) | 2017.02.21 |
[Golang] Go에서 언더스코어(underscore)의 의미 (0) | 2017.02.04 |
[Golang] Go 슬라이스, 배열 (0) | 2017.02.04 |
Comments