Skip to content

Commit df14012

Browse files
committed
Fix code block format.
1 parent b16e018 commit df14012

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

content/zh/post/2024/使用Rust的Iterator解决FizzBuzz问题.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
+++
22
title = "使用Rust的Iterator优雅解决FizzBuzz问题"
33
date = 2024-09-18T22:46:00-07:00
4-
lastmod = 2024-09-18T23:58:05-07:00
4+
lastmod = 2024-09-19T00:03:03-07:00
55
tags = ["rust"]
66
categories = ["rust"]
77
draft = false
@@ -95,7 +95,7 @@ assert_eq!(None, four_fours.next());
9595

9696
### <span class="section-num">3.2</span> once {#once}
9797

98-
有生成无限个元素的 `iterator=, 自然就有只生成一个元素的 =iterator`, 那就是 `once()`, 这个 `iterator` 只会返回一个指定的元素。 <br/>
98+
有生成无限个元素的 `iterator`, 自然就有只生成一个元素的 `iterator`, 那就是 `once()`, 这个 `iterator` 只会返回一个指定的元素。 <br/>
9999

100100
所以 `once("fizz")` 就是创建一个只会返回一个 `"fizz"``iterator` : <br/>
101101

@@ -198,7 +198,7 @@ assert_eq!(iter.next(), None);
198198

199199
最核心的是Rust的 pattern matching, 用来匹配不同的值, `(i, ("", ""))` 就是匹配所有 fizz 和 buzz为 `("", "")` 的值,什么情况下 `fizz``buzz` 会都为 "" 呢,无法整除3以及无法整除5的时候,那么就直接返回数字 `i`; <br/>
200200

201-
`(_, (fizz,buzz))`, `_` 就是通配符,就是匹配掉所有其他的情况,无论是 fizz = "", fizz = "fizz", buzz `"" 或者 buzz = "buzz", 都把返回 "{fizz}{buzz}", 也就是 =(_, (fizz,buzz))` 匹配了4种情况. <br/>
201+
`(_, (fizz,buzz))`, `_` 就是通配符,就是匹配掉所有其他的情况,无论是 fizz = "", fizz = "fizz", buzz = "" 或者 buzz = "buzz", 都把返回 `"{fizz}{buzz}"`, 也就是 `(_, (fizz,buzz))` 匹配了4种情况. <br/>
202202

203203
`map` 迭代器返回的是一个 String, 最后再加 String 打印出来. <br/>
204204

0 commit comments

Comments
 (0)