Proverb
概要
- Vecを受け取り、それに合わせてStringを作成する
初期コード
pub fn build_proverb(list: &[&str]) -> String { todo!()}考察
- listが emptyか否かで処理を分ける。
- 最後にlist[0]を使うので、Some(word)として受け取るときれいにかける
学んだこと
list.is_empty()とlist[0] == Noneが同値である
chainメソッドの使い方
- Iterator in std::iter - Rust
- 二つのiteratorを連結する
let a1 = [1, 2, 3];let a2 = [4, 5, 6];
let mut iter = a1.iter().chain(a2.iter());
assert_eq!(iter.next(), Some(&1));assert_eq!(iter.next(), Some(&2));assert_eq!(iter.next(), Some(&3));assert_eq!(iter.next(), Some(&4));assert_eq!(iter.next(), Some(&5));assert_eq!(iter.next(), Some(&6));assert_eq!(iter.next(), None);onceメソッドの使い方
-
引数を一度だけ返すイテレータを生成する
-
基本的に
chainと組み合わせて使うことになるだろう