使うことになると思うのですが、こいつから値を取り出すときの書き方が人によって結構まちまちだな、と思うことが結構あるので、ちょっとおさらいしてみることにします。今回は割と初歩的な内容になります。あと、記事中のコードはテストしてないので動作を保証できません。許容するフィールドについては型チェックを行う必要がある、というのがポイントになります。送出される場合があるからです。要求するような実装においては非常に便利な演算子です。(なので、個人的にはなるべく避けたい、頼り切りたくない概念なのですが...)。許容フィールドに対しても同じように書けるため、非常にすっきりします。対して使うことは出来ません。型としているのがポイントです。これは、以下のように書くのと同じ意味になります。許容する特殊な構造体という位置づけで、通常の値型の値と同じように四則演算や比較演算を行うことも出来たりします。プロパティを使う必要があります。呼んでしまえという考え方もあったりします。開発などでは割とよく見かける手法です。...}数値が入るフィールドの値をそのまま文字列として出力したいようなケースでは便利です。してしまうと必ずしも期待した通りの表示にならないものもあるので、注意が必要です。演算子を用いる方法の方が適切かも知れません。演算子を用いる方法の方が適切であるといえます。メソッドを呼べばいいか、みたいな使い方もあり得ます。型の値を要求するようなメソッドやプロパティに渡して用いるようなケースでは、わざわざ型キャストしてやる必要もないでしょう。用いて値を連結して使う場合なんかもそうですね。まとめどの方法にもそれぞれ利点はあるので、ケースバイケースで使い分けると良いのではないかと思います。指針としてはこんな感じになるでしょうか。許容しない型の値を取り出して評価したい場合。値を許容しないフィールドであることが分かっている場合。チェックを怠ると型キャストに失敗して例外が送出されることがある。構造体を用いるのが嫌でなければ、多くのケースで適当。