簡體   English   中英

Scala對理解性能的比較

[英]Scala for comprehensions performance compared

給定兩個具有相同語義但聲明不同的理解,為說明起見,

for ( i <- 1 to n ) yield { if (i % 2 == 0) 0 else 1 }

for { i <- 1 to n
      m = if (i % 2 == 0) 0 else 1 
    } yield m

哪個聲明被證明更有效,否則盡管使用if-else表達式聲明,性能是否沒有顯着差異?

它們是完全相同的東西,都轉換為:

(1 to n).map{i => if (i % 2 == 0) 0 else 1}

單一的理解只是一張地圖的語法糖

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM