.NET ヘルプ

C# Null合体演算子(開発者向けの仕組み)

更新済み 1月 14, 2024
共有:

イントロダクション

ヌル合体演算子 (??) 右辺オペランドを評価し、その結果が非 null 参照であればその結果を返します。 それ以外の場合は、左側のオペランドの値を返します。 左辺のオペランドが非ヌル値型に評価される場合、ヌル条件演算子 (もちろんです。翻訳したいコンテンツを提供してください。) 右側のオペランドを評価しません。 代入演算子??=は、左オペランドがnull可能型の値に評価される場合にのみ右オペランドの値を左オペランドに代入します。 左側のオペランドがnullでない値に評価される場合、null合体代入演算子 (??=) 右辺オペランドを評価しません。 ヌル合体演算子は三項演算子に似ています。

C#におけるnull合体演算子は本当に (もちろんです。翻訳したいコンテンツを提供してください。) は二項演算子です。 二つのオペランドに作用する演算子は二項演算子と呼ばれます。 ヌル合体演算子を使用する場合、2つのオペランドが必要です。演算子は各オペランドを評価して結果を決定します。 以下では、C#におけるnull合体演算子およびnull条件演算子の使用方法を見ていきます。

C# における Null 合体演算子の使い方

  1. 新しいC#プロジェクトを作成してください。

  2. 適切なバージョンがインストールされていることを確認してください。

  3. null 合体演算子 ?? を使用します。

  4. 要件に基づいて値またはオブジェクト参照タイプを確認します。

  5. コードを実行してください。

C#におけるNull合体演算子

C#のNull値は、デフォルトで提供される方法によって処理されます。 ヌル合体演算子 (もちろんです。翻訳したいコンテンツを提供してください。)これは、null になる可能性のある値や式を扱う際に、このような値を管理するために使用される統合の概念です。

構文

以下はnull合体演算子の構文です:

result = expression1 ?? expression2;
result = expression1 ?? expression2;
result = If(expression1, expression2)
VB   C#

式1: この式は null 値を生成する可能性があります。

この式2: 式1がnullの場合、既定値または代替式として使用されます。

結果: 合体演算の結果を保持する変数。

null合体演算子は、nullableタイプを使う際にデフォルト値を割り当てる簡潔な方法を提供し、コードの簡素化とnullデータの効率的な処理をその主な目的としています。

利点

  • 簡潔さ:複雑な条件文や三項演算子を必要とせず、nullチェックを処理します。
  • コードの可読性は、null が返された場合にデフォルト値が提供されることを明示することで向上します。

    ヌル合体演算子を使用する前に、比較する式の型が一致しているか互換性があることを確認することが重要です。

    有用ではありますが、オペレーターを過剰に使用するとコードの理解が難しくなる場合があります。 コードの明確化に役立つ場合、慎重に使用してください。

    ヌル許容型やデフォルト値が必要なシナリオで作業する場合、null 合体演算子 (もちろんです。翻訳したいコンテンツを提供してください。) C#では、null値を管理するための効果的なツールであり、より簡潔で理解しやすいコードを書くのに役立つ場合があります。

    null 合体演算子 ?? 以下のタイプ関連の特性を持っています:

結果型推論

以下のコードに示すように、NULL合体演算子の結果の型は、式1と式2が同じ型を持つ場合にこれらのオペランドと同じです。

int? Value = null;
int result = Value ?? 10;
int? Value = null;
int result = Value ?? 10;
Dim Value? As Integer = Nothing
Dim result As Integer = If(Value, 10)
VB   C#

型の互換性

アウトカムタイプは、式1と式2が異なるタイプを持つが一方が他方に暗黙的に変換できる場合に、両方の式が暗黙的に変換できるタイプです。

double? value= null;
int result = (int)(value ?? 5.5);
double? value= null;
int result = (int)(value ?? 5.5);
Imports System

Dim value? As Double= Nothing
Dim result As Integer = CInt(Math.Truncate(If(value, 5.5)))
VB   C#

タイプ プロモーション

式1と式2の型が暗黙的に変換できない場合、結果の型はC#の型昇格規則に従って選択されます。

int? value= null;
long result = value ?? 100L;
int? value= null;
long result = value ?? 100L;
Dim value? As Integer= Nothing
Dim result As Long = If(value, 100L)
VB   C#

したがって、オペランドに関わる型およびC#型変換ルールが、null合体演算子の結果を保持する変数または式の型を決定します。 (もちろんです。翻訳したいコンテンツを提供してください。). null 合体演算子を使用して型と値を正しく処理するためには、互換性と潜在的な型変換を考慮することが重要です。

IronPDFにおけるコアレッシング

IronPDF をインストール

以下を取得する IronPDF ライブラリ 次回のパッチにはそれが必要です。 これを行うには、以下と同じコードをパッケージマネージャーに入力してください:

Install-Package IronPdf

C# Null 合体演算子(開発者にとっての仕組み):図1 - IronPDFのインストール

または、NuGetパッケージマネージャーを使用してパッケージ「IronPDF」を検索することもできます。 以下のリストにあるIronPDFに関連するすべてのNuGetパッケージから必要なパッケージを選んでダウンロードしてください。

C#ヌル合体(開発者のための仕組み):図2 - NuGetパッケージマネージャー

ヌル合体を使用してPDFを作成

C#ライブラリであるIronPDFは、PDFドキュメントを作成し、操作するために使用されます。 ライブラリは、PDFの操作に関するいくつかの機能を提供しています。例えば、フォーマット、テキスト処理、画像管理などが含まれます。 「Null-coalescing」は、IronPDFにのみ特有のメソッドでも機能でもありません。 むしろ、それはライブラリ固有の操作というよりは、言語の機能です。

ただし、C#コードでIronPDFや他のライブラリを使用している場合、null合体演算子を利用することができます。 (もちろんです。翻訳したいコンテンツを提供してください。) C#言語が提供する。

IronPDFオブジェクトを使用している間、nullの状況を処理したりデフォルト値を提供するためには、nullable value typesやnullを返す可能性のあるプロパティに対してnull合体演算子を使用することができます。

以下の例は、IronPDFでnull合体演算子を使用する方法を示しています:

using IronPdf;
using IronPdf.Pages;
namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string [] args)
        {
            int? x = null;
            var outputstr = $@"square of <b>{x}</b> is <b>{ Math.Sqrt(x??30)}</b>";
            var pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr);
            pdfcreate.SaveAs("demo.pdf");
            Console.ReadKey();
        }
    }
}
using IronPdf;
using IronPdf.Pages;
namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string [] args)
        {
            int? x = null;
            var outputstr = $@"square of <b>{x}</b> is <b>{ Math.Sqrt(x??30)}</b>";
            var pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr);
            pdfcreate.SaveAs("demo.pdf");
            Console.ReadKey();
        }
    }
}
Imports IronPdf
Imports IronPdf.Pages
Namespace ConsoleApp1
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			Dim x? As Integer = Nothing
			Dim outputstr = $"square of <b>{x}</b> is <b>{Math.Sqrt(If(x, 30))}</b>"
			Dim pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr)
			pdfcreate.SaveAs("demo.pdf")
			Console.ReadKey()
		End Sub
	End Class
End Namespace
VB   C#

アイアンPDFを忘れないでください (または、任意のライブラリ) null 値の条件演算子を管理するための特別な機能やメソッドは提供していません。 むしろ、null 合体演算子の使用は、null 条件演算子を扱うための一般的なC#言語の機能と概念に基づいています。 IronPDFについて詳しく知りたい場合は、ここをクリックしてください。 これ.

出力:

C# Null合体演算子 (開発者向けの仕組み): 図3 - 前例の出力

結論

要約すると、C#のNULL 合体演算子 (もちろんです。翻訳したいコンテンツを提供してください。) は、式や代入においてnull値を扱うのをより簡単かつ効率的にする便利な機能です。 この演算子は、値がnullである可能性があるシナリオを処理するための明確な方法を開発者に提供することで、コードを簡素化します。 これにより、開発者はデフォルト値を指定したり、代替ロジックを容易に実行することができます。 その適応性により、コードがより効率的かつ効果的になり、nullテストが簡素化され、可読性が向上します。

IronPDFでは、永続ライセンス、アップグレードオプション、1年間のソフトウェア保守、そして30日間の返金保証が含まれた「$liteLicense」Liteパッケージが提供されます。 ユーザーは、透かし入りの試用期間中に実際のアプリケーション環境で製品を評価するための30日間を取得します。 供給されたボタンをクリックしてください リンク IronPDFのコスト、ライセンス、および試用版について詳しく学ぶには。 Iron Software製品について詳しく知るには、こちらをご覧ください これ.

< 以前
Datatables .NET(開発者にとっての動作方法)
次へ >
Hangfire .NET Core(開発者向けの動作原理)

準備はできましたか? バージョン: 2024.9 新発売

無料のNuGetダウンロード 総ダウンロード数: 10,659,073 View Licenses >