我有很多 ELSE IF 语句,但我想问一下是否有更好的编码方式,这是我的代码。
if (txtMyTime.Text == "00:00")
{
myInteger = 0;
}
else if (txtMyTime.Text == "00:30")
{
myInteger = 0.5;
}
else if (txtMyTime.Text == "01:00")
{
myInteger = 1;
}
else if (txtMyTime.Text == "01:30")
{
myInteger = 1.5;
}
else if (txtMyTime.Text == "02:00")
{
myInteger = 2;
}
else if (txtMyTime.Text == "02:30")
{
myInteger = 2.5;
}
else if (txtMyTime.Text == "03:00")
{
myInteger = 3;
}
else if (txtMyTime.Text == "03:30")
{
myInteger = 3.5;
}
else if (txtMyTime.Text == "04:00")
{
myInteger = 4;
}
// And so on, until txtMyTime.Text == "24:00"
Run Code Online (Sandbox Code Playgroud)
一些SO大师可以告诉我是否有更好的编码方式?对于像我这样的新手来说会很棒。
使用TimeSpan该类来为您管理。这也认识到04:15作为4.25例如。
string txtMyTime = "04:30";
TimeSpan ts = TimeSpan.Parse(txtMyTime);
double result = ts.TotalHours; //4.5
Run Code Online (Sandbox Code Playgroud)
在一行中:
myDouble = TimeSpan.Parse(txtMyTime.Text).TotalHours;
Run Code Online (Sandbox Code Playgroud)