[SCALA] 어떻게 튜플에 배열을 변환하는?
SCALA어떻게 튜플에 배열을 변환하는?
나는 포함하는 자바 JPA에서 배열 [모든]이 (이 경우 두하지만, 어떤 소수의 고려) 다른 형식의 것들. 내가 대신 튜플 이러한를 표현하고 싶습니다.
좀 신속하고 더러운 변환 코드를 가지고 있고, 그것을 개선 아마도 더 일반적인 될 수 있는지 궁금.
val pair = query.getSingleOrNone // returns Option[Any] (actually a Java array)
pair collect { case array: Array[Any] =>
(array(0).asInstanceOf[MyClass1], array(1).asInstanceOf[MyClass2]) }
해결법
-
==============================
1.이것은 어떤가요?
이것은 어떤가요?
val pair = query.getSingleOrNone pair collect { case Array(x: MyClass1, y: MyClass2, _*) => (x,y) } // result would be Option[(MyClass1, MyClass2)]
-
==============================
2.사용 맵 {케이스 어레이 (F1, F2) => (F1, F2)}.
사용 맵 {케이스 어레이 (F1, F2) => (F1, F2)}.
다음은 그 예이다 :
Array( "CA:California", "WA:Washington", "OR:Oregon"). map(s => s.split(":")). map { case Array(f1,f2) => (f1,f2)}
-
==============================
3.내 솔루션은 다음과 같다 :
내 솔루션은 다음과 같다 :
val loginValues = line.split(",") // return an Array val (ip, date, action, username) = (loginValues(0), loginValues(1).toLong, loginValues(2), loginValues(3))
from https://stackoverflow.com/questions/12585549/how-to-convert-an-array-to-a-tuple by cc-by-sa and MIT license
'SCALA' 카테고리의 다른 글
[SCALA] 스파크 스칼라 : 시간 또는 분에 의해 두 열의 참조 DateDiff (0) | 2019.11.17 |
---|---|
[SCALA] 스칼라 : 개체 이니셜 라이저에서 병렬 컬렉션 요령에 프로그램을 원인 (0) | 2019.11.17 |
[SCALA] 스칼라 프로젝트는 이클립스에서 컴파일되지 않습니다; "메인 클래스를 찾을 수 없습니다." (0) | 2019.11.17 |
[SCALA] 왜 스칼라 방법이 명시 적으로 호출은 암시 적으로 해결 될 수 있습니까? (0) | 2019.11.17 |
[SCALA] 인수 형 공동는 콘트라 변형되지 아닌가? (0) | 2019.11.17 |