C#で文字列を空の文字列に初期化する方法【nullとstring.Emptyの使い分け】
C#で文字列を空の状態に初期化したい場合、主に2つの方法があります。まずは、null を代入して初期化する最もシンプルな方法から見ていきましょう。
string myStr = null;
初期化した文字列が空(またはnull)かどうかを確認するには、組み込みメソッド IsNullOrEmpty() を使用します。
if (string.IsNullOrEmpty(myStr)) {
Console.WriteLine("文字列は空またはnullです!");
}それでは、完全なコードを確認してみましょう。
サンプルコード
using System;
namespace Demo {
class Program {
static void Main(string[] args) {
string myStr = null;
if (string.IsNullOrEmpty(myStr)) {
Console.WriteLine("文字列は空またはnullです!");
}
Console.ReadKey();
}
}
}実行結果
文字列は空またはnullです!
文字列を空の文字列として初期化するもう一つの方法が、string.Empty を使うやり方です。null ではなく「長さゼロの文字列」として扱われるため、NullReferenceException のリスクを避けられる点で、実際の開発ではこちらが推奨されることも多くあります。
サンプルコード
using System;
namespace Demo {
public class Program {
public static void Main(string[] args) {
string myStr = string.Empty;
if (string.IsNullOrEmpty(myStr)) {
Console.WriteLine("文字列は空またはnullです!");
} else {
Console.WriteLine("文字列は空でもnullでもありません!");
}
}
}
}実行結果
文字列は空またはnullです!
なお、null と string.Empty はどちらも IsNullOrEmpty() で「空」と判定されます。両者の違いは、null が「インスタンスそのものが存在しない」状態であるのに対し、string.Empty は「中身が空の文字列インスタンス」であるという点です。用途に応じて適切な初期化方法を選択しましょう。
-
【C#入門】イベントの宣言方法をサンプルコードで解説
イベントとは、キーの押下、マウスのクリック、マウスの移動といったユーザーアクションや、システムが生成する通知など、プログラムの内外で発生する何らかの出来事を指します。イベントはクラス内で宣言・発生させられ、デリゲートを使用してイベントハンドラーに関連付けられます。この関連付けは、同じクラス内でも別のクラスでも行うことが可能です。そして、イベントを保持しているクラスが、そのイベントを外部に公開(パブリッシュ)する役割を担います。クラス内でイベントを宣言するには、まずそのイベントのためのデリゲート型を宣言する必要があります。例えば、以下のように記述します。public delegate strin
-
C#で空の文字列配列を宣言する方法を解説
C#では、文字列を文字の配列として扱うこともできますが、一般的には string キーワードを使って文字列変数を宣言するのが主流です。string キーワードは、System.String クラスのエイリアス(別名)として機能します。空の文字列配列の宣言方法空の文字列配列を宣言するには、以下のように記述します。string[] arr = new string[] {}; // 空の文字列配列このように宣言すると、要素を一切持たない配列が生成されます。それでは、この空の配列を出力するとどうなるのか、実際のコードで確認してみましょう。サンプルコードusing System; namespace