国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

map與foreach區(qū)別 scala中map和foreach的區(qū)別?

scala中map和foreach的區(qū)別?scala中的Set對象都有foreach和map方法。這兩個方法的共同點是,它們用于遍歷集合對象并為每個項執(zhí)行指定的方法。兩者的區(qū)別在于foreach沒有返

scala中map和foreach的區(qū)別?

scala中的Set對象都有foreach和map方法。這兩個方法的共同點是,它們用于遍歷集合對象并為每個項執(zhí)行指定的方法。兩者的區(qū)別在于foreach沒有返回值(確切地說,它返回void),map返回collection對象。查看以下代碼和運行結(jié)果:B.getClass獲取void,而C.getClass獲取collection。查看代碼的第9-11行,foreach和map的結(jié)果是一致的。結(jié)論是foreach不能代替map,而map方法可以代替foreach。問:為什么Scala提供foreach和map?在我看來,作為一種支持函數(shù)編程范式的語言,Scala必須引入一種機制來支持數(shù)學(xué)中的函數(shù)概念。在數(shù)學(xué)中,函數(shù)是映射的,所以scala中有映射方法也就不足為奇了。Foreach僅在不需要對集合執(zhí)行映射操作,但需要遍歷集合時使用。總之,foreach用于遍歷一個集合,map用于將一個集合映射(轉(zhuǎn)換)到另一個集合。[Java]查看純拷貝

for循環(huán)。通過下標(biāo),它可以重復(fù)執(zhí)行循環(huán)中的代碼。它功能強大,可以通過索引獲取元素。它更方便處理更復(fù)雜的處理。Foreach循環(huán)Foreach自始至終遍歷集合中的對象。它適用于簡單的遍歷。使用foreach時,集合的對象將被鎖定,在此期間不能修改。與for循環(huán)相比,select foreach的使用減少了代碼,但是foreach依賴于IEnumerable。運行時,效率低于for-loop。當(dāng)然,在處理循環(huán)數(shù)不確定的循環(huán)時,或者需要計算循環(huán)數(shù)的時候。Foreach使用方便。此外,通過編譯系統(tǒng)對foreach的代碼進行了優(yōu)化,類似于for循環(huán)??梢哉fforeach語句是for語句的一個特殊簡化版本。在遍歷數(shù)組和集合時,foreach為開發(fā)人員提供了極大的便利。在復(fù)雜的環(huán)路設(shè)計中,還是應(yīng)該采用較為靈活的for環(huán)路。