默认情况下TimeSpan
结构需要三个或更多个参数(小时/分钟/秒等),但我想知道是否有办法将此减少到两个参数(甚至一个)以获得分钟/秒或只是秒作为参数。
答案 0 :(得分:3)
如果您只想传递秒或分钟,可以使用静态方法:
TimeSpan timeSpanDays = TimeSpan.FromDays(10);
TimeSpan timeSpanHours = TimeSpan.FromHours(10);
TimeSpan timeSpanMilliseconds = TimeSpan.FromMilliseconds(10);
TimeSpan timeSpanMinutes = TimeSpan.FromMinutes(10);
TimeSpan timeSpanSeconds = TimeSpan.FromSeconds(10);
TimeSpan timeSpanTicks = TimeSpan.FromTicks(10);
答案 1 :(得分:2)
有一些静态方法,可以从一个参数创建TimeSpan
:
TimeSpan.FromSeconds(double seconds)
TimeSpan.FromMinutes(double minutes)
您可以阅读有关msdn TimeSpan page
的所有信息注意double参数,所以你可以传递1.5分钟。
答案 2 :(得分:1)
你有一些选择:
TimeSpan.From...
方法
public static void MakeSpan(int mins, int secs) {
return new TimeSpan(0, mins, secs);
}
public static void main() {
Func<int, int, TimeSpan> MakeSpan = (mins, secs) => new TimeSpan(0, mins, secs);
var span1 = MakeSpan(1, 30);
var span2 = MakeSpan(2, 05);
// more to come
}