1
자바 코드를 작성하여 페이지별로 XML 덤프 페이지를 읽고 싶습니다. 이 스칼라 코드가 있는데, 다시 쓰려고 이해하지 못합니다. 그래서 무엇입니까? 비슷한 Java 코드. 나는 그것이 JVM에서 제대로 실행될 수 있지만, 나는 내가 이해할 수있는 것을 원한다.스칼라 코드를 자바로 변환하여 XML 파일을 읽는 방법
import edu.umd.cloud9.collection.wikipedia.language._
import edu.umd.cloud9.collection.wikipedia._
def wikiXmlToPlainText(xml: String): Option[(String, String)] = {
val page = new EnglishWikipediaPage()
WikipediaPage.readPage(page, xml)
if (page.isEmpty) None
else Some((page.getTitle, page.getContent))
}
val plainText = rawXmls.flatMap(wikiXmlToPlainText)
은 다시 독자들에게 숙제로 남긴다. –
사실 List (1,2,3) .flatMap (a => Some (a) .filter (_ % 2 == 0))'은 컴파일하여'List (2)'를 반환합니다. 'rawXmls' 또는'plainText'에 대한 타입의 원래 코드에는 전혀 표시가 없습니다. 'wikiXmlToPlainText'에 대한 매개 변수는 리턴 타입이 엄격하게 모나드는 아니지만 표준 콜렉션 중 하나 일 것이라고 알려주는 'Something [String]'이라고 알려줍니다. RDD from spark는 또한 예를 들어 flatMap에 전달 된 함수로'A => Traversable [B]'를 허용합니다. –
감사합니다. 네, JavaRDD 또는 JavaRDD >로 페이지 제목으로 string1을 사용하고 페이지 본문으로 String2로 사용해야합니다. –
user283686