44<!-- Rust’s take on `if` is not particularly complex, but it’s much more like the -->
55<!-- `if` you’ll find in a dynamically typed language than in a more traditional -->
66<!-- systems language. So let’s talk about it, to make sure you grasp the nuances. -->
7- Rustにおける ` if ` の扱いはさほど複雑ではありませんが、伝統的なシステムプログラミング言語のそれに比べて、
8- 動的型付け言語でみられる ` if ` にずっと近いものになっています。そのニュアンスをしっかり理解できるよう、
9- さっそく説明していきましょう。
7+ Rustにおける ` if ` の扱いは さほど複雑ではありませんが、伝統的なシステムプログラミング言語のそれと比べて、
8+ 動的型付け言語の ` if ` により近いものになっています。そのニュアンスをしっかり理解できるように、説明しましょう。
109
11- <!-- `if` is a specific form of a more general concept, the ‘branch’. The name comes -->
10+ <!-- `if` is a specific form of a more general concept, the ‘branch’. whose name comes -->
1211<!-- from a branch in a tree: a decision point, where depending on a choice, -->
1312<!-- multiple paths can be taken. -->
14- ` if ` は一般化されたコンセプト 、「分岐(branch)」の特別な形式です。この名前は木の枝 (branch)を由来とし :
15- 取りうる複数のパスから、選択の決定を行うポイントを表します 。
13+ ` if ` は より一般的なコンセプトの一つである 、「分岐(branch)」の具体的な形です。この名称は、木の枝 (branch)に由来します :
14+ 決定点はひとつの選択に依存し、複数のパスを取ることができます 。
1615
1716<!-- In the case of `if`, there is one choice that leads down two paths: -->
18- ` if ` の場合は、続く2つのパスから1つを選択します 。
17+ ` if ` の場合は、二つのパスを導く ひとつの選択があります 。
1918
2019``` rust
2120let x = 5 ;
@@ -29,12 +28,11 @@ if x == 5 {
2928<!-- If we changed the value of `x` to something else, this line would not print. -->
3029<!-- More specifically, if the expression after the `if` evaluates to `true`, then -->
3130<!-- the block is executed. If it’s `false`, then it is not. -->
32- 仮に ` x ` を別の値へと変更すると、この行は表示されません。より正確に言うなら、
33- ` if ` のあとにくる式が ` true ` に評価された場合に、ブロックが実行されます。
34- ` false ` の場合、ブロックは実行されません。
31+ もし、` x ` を別の値に変更すると、この行は出力されません。よりわかりやすく説明すると、
32+ ` if ` のあとにくる式が ` true ` に評価された場合、そのブロックが実行されます。また、` false ` の場合は、それは実行されません。
3533
3634<!-- If you want something to happen in the `false` case, use an `else`: -->
37- ` false ` の場合にも何かをしたいなら 、 ` else ` を使います:
35+ ` false ` の場合にも何かをしたい時は 、 ` else ` を使います:
3836
3937``` rust
4038let x = 5 ;
@@ -49,7 +47,7 @@ if x == 5 {
4947```
5048
5149<!-- If there is more than one case, use an `else if`: -->
52- 場合分けが複数あるときは 、 ` else if ` を使います:
50+ 複数の条件がある時は 、 ` else if ` を使います:
5351
5452``` rust
5553let x = 5 ;
@@ -67,7 +65,7 @@ if x == 5 {
6765```
6866
6967<!-- This is all pretty standard. However, you can also do this: -->
70- 全くもって普通ですね。しかし、次のような使い方もできるのです :
68+ これは当然なことですが、次のように書くこともできます :
7169
7270``` rust
7371let x = 5 ;
@@ -80,7 +78,7 @@ let y = if x == 5 {
8078```
8179
8280<!-- Which we can (and probably should) write like this: -->
83- 次のように書くこともできます(そして、大抵はこう書くべきです) :
81+ また、次のように書くのがほとんどの場合良いでしょう :
8482
8583``` rust
8684let x = 5 ;
@@ -91,6 +89,5 @@ let y = if x == 5 { 10 } else { 15 }; // y: i32
9189<!-- This works because `if` is an expression. The value of the expression is the -->
9290<!-- value of the last expression in whichever branch was chosen. An `if` without an -->
9391<!-- `else` always results in `()` as the value. -->
94- これが出来るのは ` if ` が式であるためです。その式の値は、選択された分岐中の最後の式の値となります。
95- ` else ` のない ` if ` では、その値は常に ` () ` となります。
96-
92+ これが出来るのは ` if ` が式だからです。その式の値は、選択された条件の最後の式の値です。
93+ ` else ` のない ` if ` では、その値は常に ` () ` になります。
0 commit comments