TimeSpan
TimeSpan описывает не момент на
оси, а длительность. Её переводят во
TimeOnly.FromTimeSpan
и обратно через
ToTimeSpan.
Собрать интервал помогают
FromHours
и
Parse.
Синтаксис
TimeSpan span = new TimeSpan(hours, minutes, seconds);
TimeSpan span2 = new TimeSpan(days, hours, minutes, seconds);
Пример
Давайте разберём
new TimeSpan(1, 2, 3) -
это час, минута и секунда, не сутки:
using System;
class Program
{
static void Main()
{
var span = new TimeSpan(1, 2, 3);
Console.WriteLine(span.Hours);
Console.WriteLine(span.Minutes);
Console.WriteLine(span.Seconds);
}
}
Результат выполнения кода:
1
2
3
Пример
Давайте задать сутки в первом аргументе четырёхполюсного конструктора:
using System;
class Program
{
static void Main()
{
var span = new TimeSpan(1, 2, 3, 4);
Console.WriteLine(span.Days);
Console.WriteLine(span.Hours);
Console.WriteLine(span.Minutes);
Console.WriteLine(span.Seconds);
}
}
Результат выполнения кода:
1
2
3
4
Пример
Давайте убедиться, что
Add не меняет исходный интервал:
using System;
class Program
{
static void Main()
{
var span = new TimeSpan(1, 2, 3);
span.Add(TimeSpan.FromMinutes(10));
Console.WriteLine(span.Hours);
}
}
Результат выполнения кода:
1
Смотрите также
-
FromDays,
интервал из дней -
Zero,
нулевая длина -
FromTimeSpan,
время суток -
ToTimeSpan,
обратно изTimeOnly