Argomenti C# importanti

I metodi di estensione (extension method) in C#

In questa lezione aggiungerai un nuovo metodo al tipo string esistente senza modificare quel tipo.

Introduzione

I metodi di estensione (extension method) permettono di "aggiungere" metodi a un tipo già esistente, persino ai tipi di .NET come string. In realtà si tratta di un metodo static, ma si chiama con la stessa sintassi di un metodo dell'oggetto, il che rende il codice più facile da leggere e da trovare.

La parola chiave this nel primo parametro di Truncate indica che è un metodo di estensione del tipo string. Così puoi chiamare "CodeUtility".Truncate(4) come se Truncate fosse un metodo nativo della stringa. Il metodo taglia la stringa a 4 caratteri e aggiunge i puntini di sospensione, ottenendo Code…. Il tipo string originale non cambia affatto.

Esempio C# eseguibile

C#
Esegui il codice →
Program.cs
using System;

static class StringExtensions
{
    public static string Truncate(this string value, int length)
        => value.Length <= length ? value : value[..length] + "…";
}

class Program
{
    static void Main() => Console.WriteLine("CodeUtility".Truncate(4));
}
Risultato dell'esecuzione
Code…

Esercitati con il debugger

Metti un breakpoint su un'assegnazione o una condizione importante, fai clic su Debug ed esamina i valori locali prima di passare alla riga successiva.

Esercitati con una sfida

Usa ciò che questa lezione spiega per risolvere un problema reale. Ogni sfida gira nel browser, con test immediati e una revisione dell'IA.

Tutte le sfide