1. ホーム
  2. .net

[解決済み】String.Emptyと""(空文字列)の違いは何ですか?)

2022-03-27 05:27:56

質問

.NETの場合、以下の違いは何ですか? String.Empty"" というのは、相互交換が可能なのか、それとも何か根本的なリファレンスやローカライズの問題があるのか? String.Empty は問題ないのでしょうか?

解決方法は?

バージョン2.0より前の.NETでは。 "" はオブジェクトを作成しますが string.Empty はオブジェクトを生成しません。 レフ ということになります。 string.Empty より効率的です。

.NETのバージョン2.0以降では、すべての "" は同じ文字列リテラルを参照していることになります。 "" と同じです。 .Empty には及ばないが、それでも .Length == 0 .

.Length == 0 は最速のオプションですが .Empty を使うと、少しすっきりしたコードになります。

をご覧ください。 .NET仕様の詳細はこちら .