Confronto nulla di argomento generico
Quando si confrontano gli argomenti generici per null, utilizziamo l'operatore == che controlla se due operandi sono uguali. Quando si utilizza l'operatore == per confrontare gli argomenti generici, è importante garantire che il tipo di argomento sia un tipo di riferimento. L'operatore == viene utilizzato per confrontare i riferimenti, ecco un esempio di confronto nullo di un argomento generico in C#:
public static bool isnullIl codice sopra utilizza l'operatore == per verificare se l'argomento è nullo o meno e il dove T: classe Il vincolo garantisce che il tipo di argomento sia un tipo di riferimento, che ci consente di utilizzare l'operatore == per confrontare i riferimenti.
Confronto predefinito di argomento generico
Quando si confrontano gli argomenti generici per il default, utilizziamo EqualityComparer.Predefinito.Equivale metodo. IL EqualityComparer.Predefinito La proprietà restituisce il confronto dell'uguaglianza predefinita per il tipo specificato dall'argomento generico. Il metodo Equals del confronto di uguaglianza predefinita viene utilizzato per confrontare due operandi per l'uguaglianza, ecco un esempio di un confronto predefinito di un argomento generico in C#:
Public Static Bool IsDefaultIl codice sopra utilizza il file EqualityComparer.Predefinito.Equivale() funzione per verificare se l'argomento è uguale al valore predefinito del suo tipo di dati. La parola chiave predefinita viene utilizzata per rappresentare il valore predefinito di un tipo di dati.
Esempio: usando null e predefinito in c#
Ecco un esempio di codice completo che dimostra sia il confronto null che quello predefinito di argomenti generici in C#:
usando il sistema;Il codice C# sopra definisce un'applicazione della console che contiene due metodi generici. Il primo metodo "È zero" assume un argomento generico "Arg" e restituisce un valore booleano che indica se "Arg" è nullo o no, con un vincolo che "T" Deve essere un tipo di riferimento.
Il secondo metodo, "IsDefault" assume un argomento generico "Arg" e restituisce un valore booleano che indica se "Arg" è il valore predefinito per il suo tipo, senza vincoli "T". Le funzioni principali testano entrambi i metodi con una stringa nulla e un valore intero predefinito, rispettivamente:
Conclusione
Quando si lavora con i generici in C#, è importante capire come il confronto nullo o predefinito funziona con argomenti generici. Per il confronto null, utilizziamo l'operatore == per confrontare i riferimenti e per il confronto predefinito, utilizziamo il EqualityComparer.Predefinito.Equivale Metodo per confrontare i valori. È possibile scrivere un codice più efficiente ed efficace comprendendo come eseguire confronti null o predefiniti su argomenti generici.