我目前正在用大約5個嵌套if語句掙扎,並且它變得相當困惑以查看所有這些語句。三元運算符在foreach
於是,我想到了將三元運營商,而不是IFS爲簡單的檢查,看
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
}
}
}
這就是它的外觀像現在。這就是我如何使它看起來想法一點點更漂亮:
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
}
}
所以,問題是:1,是不好的編程來解決它像這樣和2將它的工作就是我想要的?
那會編譯嗎?據我所知,「:」的左右兩邊都必須是一個值。 (三元運算符返回一個值)。 – 2010-09-01 09:02:19
它看起來不像三元運算符可以幫助你在可讀性和功能性方面。如果您需要5 lvls deep'foreach',那麼我認爲您可能需要重新考慮您的功能 – Stefanvds 2010-09-01 09:13:31
爲什麼不寫「如果!...繼續」?它實際上比你的例子更短,很明顯,最好 - 它的工作原理。 – greenoldman 2010-09-01 10:19:43