Skip to content

ZH TW CSharp Operator Null Forgiving

Codex edited this page Oct 11, 2026 · 2 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

抑制可為 null 的警告

使用手冊C# · 實用指南

告訴可空分析該表達式被視為非null。不檢查該值,也不防止NullReferenceException。

簡單範例 (Example.cs)

請將此範例另存為 Example.cs,並與本頁其他範例分開執行。

Example.cs:

// PROJECT-EXAMPLE
string? name = "ore";
System.Console.WriteLine(name!.Length);

結果:

3

句法

possiblyNull!.Member

範例1

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;

public static class Program
{
    public static async Task Main(string[] args)
    {
        string? text = "ore";
        Console.WriteLine(text!.Length);
    }
}

範例2

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;

public static class Program
{
    public static async Task Main(string[] args)
    {
        Dictionary<string, string> values = new() { ["name"] = "Archer" };
        values.TryGetValue("name", out string? name);
        Console.WriteLine(name!.ToUpperInvariant());
    }
}

官方來源:Microsoft學習。

Clone this wiki locally