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
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));
}
Code…Esercitati con il debugger
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.
- Title Case Metti la prima lettera di ogni parola in maiuscolo. Facile
- Acronym Generator Create an acronym from the first letter of every word, in uppercase. Facile