在命令式程式設計中,我們通常有如下所示的程式碼:
func addOneToSlice(xs []int) []int { rs := make([]int, len(xs)) for i, value := range xs { rs[i] = value 1 } return rs }
但是,請注意有關 for 迴圈的以下幾點:
比較如何在 F# 中完成相同的任務:
let rec addOneToList = function | [] -> [] | x :: xs -> x 1 :: addOneToList xs
現在考慮以下事項:
考慮到這些限制,向不在列表開頭的任何元素 y 添加 1 將顯著改變我們函數的結構。
現在比較兩種風格的計算進度:
在函數式風格中,將範圍與計算進度結合會產生以下結果:
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3