Je suis actuellement aux prises avec environ 5 if-statements imbriqués et il devient assez déroutant de les regarder tous.Opérateur ternaire dans foreach
Alors, je pensais à ajouter des opérateurs ternaires au lieu de ifs pour des contrôles simples, voir
foreach (String control in controls)
{
if (!control.Equals(String.Empty))
{
// Do some stuff
foreach (Int32 someStuff in moreStuff)
{
if (!someStuff.Equals(0))
{
// More stuff with more if equals
}
}
}
est comment il ressemble en ce moment. Thats my idée sur la façon de le faire paraître un peu plus agréable:
foreach (String control in controls)
{
(control.Equals(String.Empty)) ? continue : null;
// Do some stuff
foreach (Int32 someStuff in moreStuff)
{
(someStuff.Equals(0)) ? continue : null;
// More stuff
}
}
Ainsi, les questions sont: 1. est une mauvaise programmation pour le résoudre comme ça et 2. ça va fonctionner comme je le veux?
Est-ce que cela compilera même? Autant que je sache, les deux côtés gauche et droit de ': 'doivent être une valeur. (L'opérateur ternaire renvoie une valeur). –
il ne ressemble pas à l'opérateur ternaire vous aide à la lisibilité et la fonctionnalité. Si vous avez besoin de 5 lvls profond 'foreach' alors je pense que vous devrez peut-être repenser votre fonctionnalité – Stefanvds
Pourquoi n'écrivez-vous pas" if! ... continue; "? C'est en fait encore plus court que votre exemple, c'est clair, et le meilleur - ça marche. – greenoldman