Menu
Coddy logo textTech

Null Reference Basics

CoddyのC#ジャーニー「ロジックとフロー」セクションの一部 — レッスン 31/66。

C# では、null 参照はオブジェクトの不在を表します。null 値の扱い方を理解することは、堅牢なコードを書くために不可欠です。

値を割り当てずに参照型の変数(例: string)を宣言する:

string name = null;

変数 'name' は現在 null 参照を保持しており、メモリ内のどのオブジェクトにも指していないことを意味します。

チェックせずに null 参照を使用しようとすると、ランタイム エラーが発生します:

string name = null;
// This will throw a NullReferenceException
int length = name.Length;

参照を使用する前に、それが null かどうかをチェックできます:

string name = null;
if (name != null)
{
    // Safe to use name here
    int length = name.Length;
}

変数に null 以外の値を代入することもできます:

string name = null;
name = "John";
// Now it's safe to use name
int length = name.Length; // length will be 4
challenge icon

チャレンジ

簡単

ProcessName という名前のメソッドを作成し、name という名前の文字列パラメータを受け取ってください。このメソッドは次のことを行います:

  1. name が null かどうかをチェックします
  2. name が null の場合、「Name is null」と出力します
  3. name が null でない場合、「Name length is X」と出力します(ここで X は name の長さです)

自分で試してみよう

using System;

class Program
{
    public static void ProcessName(string name)
    {
        // ここにコードを書いてください
    }
    
    static void Main(string[] args)
    {
        string input = Console.ReadLine();
        
        // "null" 文字列を実際の null に変換
        string name = input.ToLower() == "null" ? null : input;
        
        ProcessName(name);
    }
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

ロジックとフローのすべてのレッスン