Структура за рад са временом¶
У програмском језику C# рад са временом (сатима, минутима, секундама) реализује
се помоћу структуре TimeSpan из именског простора System. TimeSpan
представља интервал времена, односно разлику између два временска тренутка
(нпр. „5 дана”, „2 сата и 30 минута”, „45 секунди” итд).
Временски интервал можеш креирати помоћу конструктора…
TimeSpan trajanje = new TimeSpan(1, 20, 30); // 1 sata, 20 minuta i 30 sekundi
…или помоћу статичких метода:
TimeSpan t1 = TimeSpan.FromHours(1.5); // 1 sat i 30 minuta
TimeSpan t2 = TimeSpan.FromMinutes(45); // 45 minuta
TimeSpan t3 = TimeSpan.FromSeconds(10); // 10 sekundi
Основна својства су:
Hours, број сати,Minutes, број минута,Seconds, број секунди,Days, број дана,TotalHours, укупно сати као децимални број,TotalMinutes, укупно минута као децимални број, иTotalSeconds, укупно секунди као децимални број.
Пошто са временом радиш као са типом податка, дозвољене су одређене операције.
Сабирање и одузимање временских интервала врши се једноставно, операторима +
и -. На пример:
TimeSpan t1 = TimeSpan.FromMinutes(30);
TimeSpan t2 = TimeSpan.FromMinutes(45);
TimeSpan zbir = t1 + t2; // 1:15
TimeSpan razlika = t2 - t1; // 0:15
Console.WriteLine(zbir); // 01:15:00
Console.WriteLine(razlika); // 00:15:00
Дозвољено је и поређење релацијским операторима. На пример:
if (t1 < t2)
{
Console.WriteLine("t1 je manji interval od t2");
}
TimeSpan може представљати и негативну вредност:
TimeSpan ts = TimeSpan.FromMinutes(-10);
Console.WriteLine(ts); // -00:10:00
TimeSpan се често користи у комбинацији са структуром DateTime ради
израчунавања разлике између два временска тренутка. На пример:
DateTime pocetak = DateTime.Now;
DateTime kraj = pocetak.AddMinutes(90);
TimeSpan trajanje = kraj - pocetak;
Console.WriteLine($"Trajanje: {trajanje.TotalMinutes} minuta"); // 90
За прилагођени формат резултата мораш да користиш прелазне секвенце (\:). На
пример:
TimeSpan ts = new TimeSpan(2, 5, 30);
Console.WriteLine(ts.ToString()); // 02:05:30
Console.WriteLine(ts.ToString(@"hh\:mm")); // 02:05
Структура TimeSpan представља основни начин за рад са интервалима времена у
програмском језику C#. Она омогућава креирање, сабирање, одузимање и поређење
временских трајања, као и прецизну контролу над радом са сатима, минутима и
секундама. У наредној лекцији научићеш да користиш структуру DateTime, која
представља конкретан датум и време.