저는 간단한 코드 줄이어야하는 어려움을 겪고있는 초보자입니다. 나는 .groupBy 연산을 수행하고 "it"을 닫지 만, 컴파일러는 "누락 된 매개 변수 유형"에 대해 불평하며이를 고치는 방법을 모릅니다. 여기에 정확한 코드는 (그것은 다른 네트워크에있어 내가 다시 입력 할 필요가 - 오타 변명) :groupBy의 "누락 된 매개 변수 유형"
val rddSAInCache: RDD[Map[String, Any]] = getCache(SAInCacheExported, rddconfig)
.filter(it => it.path(EventType).getOrElse(NONE) == "SAInCache")
.map(it =>
Map(
("SAInCache" -> it.path(Time).getOrElse(NONE)),
(RequestID -> it.path(RequestID).getOrElse(NONE))
)
)
.groupBy(it => it.path(RequestID.getOrElse(NONE))
컴파일러는 "가"필터 모두의지도 [문자열, 모든] 것을 추론 할 수있다 지도는 표시하지만 groupBy는 표시하지 않습니다. 왜?? 답변보다 제안의
'groupBy'는'map' 다음에 있습니다. 그래서'it'은'Map'이며'.path' 메소드를 가지고 있지 않습니다. 어쩌면 실제 오류 일 수도 있고, 컴파일러가 옳지 않을 수있는 코드 유형을 추측하려고 혼란을 겪고있는 중입니까? – lmm
경로 메쏘드를 갖기 위해 맵을 보강했습니다. 그건 문제가 아니야. – user1660256