[ja] 断言 => アサーション
This commit is contained in:
@@ -226,9 +226,9 @@ interfaceの変数はこのinterface型のオブジェクトを持つことが
|
||||
|
||||
interfaceの変数の中にはあらゆる型の数値を保存できることを学びました(この型はinterfaceを実装しています)。では、この変数に実際に保存されているのはどの型のオブジェクトであるかどのように逆に知ることができるのでしょうか?現在二種類の方法があります:
|
||||
|
||||
- Comma-ok断言
|
||||
- Comma-okアサーション
|
||||
|
||||
Go言語の文法では、ある変数がどの型か直接判断する方法があります: value, ok = element.(T), ここでvalueは変数の値を指しています。okはbool型です。elementはinterface変数です。Tは断言の型です。
|
||||
Go言語の文法では、ある変数がどの型か直接判断する方法があります: value, ok = element.(T), ここでvalueは変数の値を指しています。okはbool型です。elementはinterface変数です。Tはアサーションの型です。
|
||||
|
||||
もしelementにT型の数値が存在していれば、okにはtrueが返されます。さもなければfalseが返ります。
|
||||
|
||||
@@ -275,7 +275,7 @@ interfaceの変数の中にはあらゆる型の数値を保存できること
|
||||
|
||||
とても簡単ですね。前にフローの項目でご紹介したとおり、いくつもifsの中で変数の初期化が許されているのにお気づきでしょうか。
|
||||
|
||||
また、断言の型が増えれば増えるほど、ifelseの数も増えるのにお気づきかもしれません。下ではswitchをご紹介します。
|
||||
また、アサーションの型が増えれば増えるほど、ifelseの数も増えるのにお気づきかもしれません。下ではswitchをご紹介します。
|
||||
- switchテスト
|
||||
|
||||
コードの例をお見せしたほうが早いでしょう。上の実装をもう一度書きなおしてみます。
|
||||
|
||||
Reference in New Issue
Block a user