如果用戶在文本框中輸入一個或多個無效雙打,我寧願不拋出異常。 這是我想做的事,但當然是錯的。如何使用Split與TryParse?
double myDouble[];
double.TryParse(textBox1.Text.Split(' '), out myDouble);
如果用戶在文本框中輸入一個或多個無效雙打,我寧願不拋出異常。 這是我想做的事,但當然是錯的。如何使用Split與TryParse?
double myDouble[];
double.TryParse(textBox1.Text.Split(' '), out myDouble);
怎麼樣......
var myDoubleList = new List<double>();
foreach(var doubleString in textBox1.Text.Split(' '))
{
double myDouble;
if (double.TryParse(doubleString, out myDouble))
myDoubleList.Add(myDouble);
}
TryParse()
只是試圖解析單雙重價值 - 你不能陣列使用它。您可以嘗試查看是否有任何數字無效:
double myDouble;
bool parseFailed = textBox1.Text.Split(' ')
.Any(s => !double.TryParse(s, out myDouble));
先拆分,然後解析每個值。也許是這樣的:
string numbers = "10 20 30 40 50";
int x = 0;
var values = from str in numbers.Split(' ')
where int.TryParse(str, out x)
select x;
如果你只是想的第一個值,你可以這樣做,太。
double myDouble[];
double.TryParse(textBox1.Text.Split(' ')[0], out myDouble);
這個(幾乎)一個班輪怎麼樣?
double dbl;
IEnumerable<double> doubles =
textBox1.Text.Split(' ')
.Select(str => Double.TryParse(str, out dbl) ? dbl : 0.0);
愛是愛一個襯墊:)