回答編集履歴
1
\(3\)を追記
test
CHANGED
@@ -40,6 +40,16 @@
|
|
40
40
|
|
41
41
|
println!("{}", id)
|
42
42
|
|
43
|
+
|
44
|
+
|
45
|
+
// (3)
|
46
|
+
|
47
|
+
let id: String = (0..8).map(|_| rng.gen_range(b'a', b'z'+1) as char)
|
48
|
+
|
49
|
+
.collect();
|
50
|
+
|
51
|
+
println!("{}", id);
|
52
|
+
|
43
53
|
}
|
44
54
|
|
45
55
|
```
|
@@ -50,8 +60,12 @@
|
|
50
60
|
|
51
61
|
(2)の方法はテーブルを用意しているので大げさな感じがします。
|
52
62
|
|
63
|
+
(3)の方法もありかもしれません。`b'z'+1`しているのはgen_range()が `[low, high)`だからです。(追記)
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
[AsciiGenerator](https://doc.rust-lang.org/rand/src/rand/src/lib.rs.html#626-640)の実装もテーブル参照のようです。
|
53
68
|
|
54
69
|
|
55
70
|
|
56
71
|
|
57
|
-
[AsciiGenerator](https://doc.rust-lang.org/rand/src/rand/src/lib.rs.html#626-640)の実装もテーブルなので、しょうがないのかも。
|