我有一些大的串列,我需要獲得其大小。根據 scala api https://www.scala-lang.org/api/2.13.3/scala/collection/immutable/List.html,Count 會回傳一個 int,這在大型串列中可能會溢位。
如何解決這個問題?
我如何繞過這個問題?
我如何繞過這個問題?
uj5u.com熱心網友回復:
一個解決方案可以是:
aList.foldLeft(0L)((acc, _) => acc 1)
這將回傳元素的總數,作為一個Long數。 如果你愿意,你可以用Pimp my library模式來包裝這個功能:
implicit class LongList[A](list: List[A]/span>) {
def sizeL。Long = list.foldLeft(0L)((acc, _) => acc 1)
}
正如評論中所說的那樣,這個操作將花費你O(n),所以如果你有其他的替代方案,請嘗試探索它們:)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/309121.html
標籤:
上一篇:在pyspark列內訪問名稱
