2011-12-20 65 views

回答

4

隨着VB.Net三元操作符:在C#

String.Format("{0}", If(x = 7, "SEVEN", "ZERO")) 

相同(如Brad已發佈):

String.Format("{0}", x == 7 ? "SEVEN" : "ZERO") 
+0

誰給我答案都是正確的 – redoc01 2011-12-20 18:50:08

+0

您的選擇。將其中一個標記爲答案,並讓其他人都滿意,所以一切都應該沒問題。 – 2011-12-20 18:51:21

2
C# 
String.Format("{0}", x == 7 ? "SEVEN" : "ZERO") 

在線ternary operator (?:)

VB.NET 
String.Format("{0}", IIf(x = 7, "SEVEN", "Zero")) ' Pre-Visual Studio 2008 
String.Format("{0}", If(x = 7, "SEVEN", "Zero")) ' Visual Studio 2008 and forward 

直列ternary method (IIf())(同樣,如VS2008的,短手If()是可用的。)

+0

誰給我答案都是正確的 – redoc01 2011-12-20 18:50:32

+0

_tec hnically_我首先回答並提及'IIf()'和'If()',但選擇是你的。 :咧嘴笑:快樂的編碼! – 2011-12-20 20:21:03

1

肯定!使用「三級操作員」(或實際稱爲「三元操作員」) - 像這樣:

string.format("{0}", x == 7 ? "SEVEN" : "ZERO"); 
+1

OP正在尋找VB.Net – 2011-12-20 18:46:42

+0

我是誰給你的anwser都是正確的 – redoc01 2011-12-20 18:49:29

2

是的。 2008年,VB和更高的If運營商可供選擇:

If(x = 7, "SEVEN", "ZERO") 

在VB 2005年低,您需要使用IIf功能

IIf(x = 7, "SEVEN", "ZERO") 

(如果您的實際代碼是什麼你發佈的確切,String.Format是完全多餘的,因爲它已經是一個字符串,你不需要格式化。)