2010-11-19 12 views
3

Je souhaite définir une variable sur une valeur par défaut si l'affectation renvoie null ou autre chose.Comment définir la valeur par défaut d'une variable en C#?

string a = GetValue(); 

si GetValue renvoie null, alors je veux avoir une valeur par défaut pour une variable, comment faire en C#. Essayez de ne pas utiliser si.

Merci pour le temps.

Répondre

11

L'opérateur coalescent nulle.

string a = GetValue() ?? "Default"; 
+0

Vous avez juste trop vite. – user469652

0

Que pensez-vous de cela?

string a = GetValue() != null ? GetValue() : "default";

+3

mauvaise idée si 'GetValue()' a des effets secondaires ... – Arnout

+0

Fermer, mais la solution de batwad est plus lisse;). Aussi, vous devez le changer en: "1"; –

+0

Cela a valu 'GetValue()' deux fois et est plus laid que l'opérateur de coalescence nul '' '' ' – CodesInChaos

0

chaîne a = GetValue() == null? string.empty: GetValue();

+2

C'est la manière difficile de le faire et 'GetValue()' peut être appelé deux fois. –

1
string a = GetValue() ?? "DefaultValue"; 
1

Ce sera

string a = GetValue() ?? "default value"; 
Questions connexes