ホームページ > バックエンド開発 > C++ > ダイレクトキャスト、 `as`オペレーター、または` toString() `:どのc#タイプ変換方法を選択する必要がありますか?

ダイレクトキャスト、 `as`オペレーター、または` toString() `:どのc#タイプ変換方法を選択する必要がありますか?

Barbara Streisand
リリース: 2025-01-30 02:41:11
オリジナル
424 人が閲覧しました

c#タイプ変換:直接変換、asオペレーター、またはToString()

Direct Casting, `as` Operator, or `ToString()`: Which C# Type Conversion Method Should You Choose?

c#では、オブジェクトをあるタイプから別のタイプに変換する多くの方法があります。この記事では、3つの一般的な方法について説明します:直接変換、

オペレーター、asメソッド。 ToString()

直接変換

オブジェクトを直接変換
<code class="language-csharp">string s = (string)o;</code>
ログイン後にコピー

タイプに変換します。 が実際にoでない場合、string異常を投げます。ただし、oが空の場合でも、文字列変数stringに割り当てられます。 InvalidCastException oオペレーターs

オブジェクトをasタイプに変換してみてください。コンバージョンが成功した場合、値は

に与えられます。ただし、変換が失敗するか、が空の場合は、
<code class="language-csharp">string s = o as string;</code>
ログイン後にコピー
を空に設定します。値タイプがnullになることはできないため、この運は値タイプでは使用できません。

as 方法o string s厳密に言えば、変換操作ではありません。代わりに、そのタイプに関係なく、オブジェクトの文字列を取得します。 が空の場合、この方法は異常oをトリガーします。 s

適切な方法を選択

ToString()ほとんどの変換では、直接変換を使用することをお勧めします(方法1)。直接的な動作を提供し、無効な場合に異常な治療を可能にします。

<code class="language-csharp">string s = o.ToString();</code>
ログイン後にコピー
オペレーター(方法2)は、変換が失敗したときにnullを返すため、めったに使用されません。これは誤解を招く可能性があります。特定の状況でのみ、異常な設計ではなくエラーコードに依存する間違った設計に依存するライブラリなど、それは利益を得ることができます。

ToString() メソッド(方法3)は、入手する必要がある文字列表現の場合は使用する必要があります。 o

以上がダイレクトキャスト、 `as`オペレーター、または` toString() `:どのc#タイプ変換方法を選択する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート