エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
Rustの便利イテレータ scan と fold - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Rustの便利イテレータ scan と fold - Qiita
let v = vec![1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; let sum = v.iter().fold(0, |sum, x| sum + x); printl... let v = vec![1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; let sum = v.iter().fold(0, |sum, x| sum + x); println!("{}", sum); // 55 基本的には見たままかと思いますが、第一引数に0を与えています。maxなどのような、イテレータが空であった場合に対応するためにOptionでラップするようなインターフェースにしないためだと思います。 ちなみに、合計を計算するためにはsumというメソッドも使うことができますが、こちらは出力に型を明示する必要があります。また、AddトレイトとDefaultトレイトが定義されていればいいというようなインターフェースにはなっておらず、usizeなどのプリミティブな型にしか使えないようです(参照)