In JavaScript c'è l'idea di valori di verità e di falsità.C# valori di verità e falsi
ad es.
- 0: sempre false
- 1: sempre vero
- '0': sempre vero
- '1': sempre vero
Esiste un elenco equivalente di truthy e Falsey valori nel linguaggio C# sul framework .NET?
Il motivo che mi piacerebbe sapere questo è che mi ritrovo a fare la seguente
if(obj != null)
{
// Do something with the object
}
Quando ho potuto scrivere il seguente
if(obj)
{
// Do something with the object
}
Ok immagino che risponda alla mia domanda :) – Alex
Quindi tutti voi dinosauri potete smettere di scrivere se (0 == i) ... – Benjol
-1; ci sono alcuni problemi qui. In primo luogo, stai abusando del termine "letterale" nella tua prima frase; un'espressione che non è un valore letterale può ancora essere un valore booleano (ad esempio '1 == 1'). In secondo luogo, l'affermazione secondo cui nulla è vero o falso, ad eccezione dei booleani, è falsa, come già trattata da altre risposte. In terzo luogo, l'inizio del terzo paragrafo non ha molto senso. Una mancanza di conversione implicita è la * definizione * della tipizzazione forte (o almeno la più comune - è un termine un po 'nebuloso e sovraccarico); stai effettivamente dicendo che una forte digitazione non è la ragione per se stessa, il che è strano. –