0Pricing
C# Academy · Ders

TimeSpan ve Süreler

Zaman aralıklarını ölçün.

TimeSpan ve Süreler, CoddyKit'te ücretsiz bir C# Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, C# Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C# Academy kursu toplamda 4 dersten oluşur.

TimeSpan Nedir

DateTime zamandaki bir noktayı temsil ederken TimeSpan, 2 saat veya 90 dakika gibi bir zaman uzunluğunu temsil eder.

Bu, herhangi bir takvime bağlı olmayan bir süredir. Kronometre sonuçları, zaman aşımı değerleri ve iki tarih arasındaki fark için kullanırsınız.

TimeSpan Oluşturma

Bir oluşturucu saat, dakika ve saniye alır: new TimeSpan(hours, minutes, seconds).

Dolayısıyla new TimeSpan(1, 30, 0) bir saat otuz dakikadır. Değer, anlaşılır bir h:mm:ss düzeninde yazdırılır.

using System;

class Program
{
    static void Main()
    {
        TimeSpan span = new TimeSpan(1, 30, 0);
        Console.WriteLine(span);
    }
}

Fabrika Yöntemleri

Çoğu zaman bir fabrika yöntemi kullanmak kodun okunmasını kolaylaştırır. TimeSpan.FromMinutes(90), 90 dakikalık bir süre oluşturur.

Buna karşılık gelen yardımcılar da vardır: FromHours, FromSeconds, FromDays ve FromMilliseconds.

using System;

class Program
{
    static void Main()
    {
        TimeSpan span = TimeSpan.FromMinutes(90);
        Console.WriteLine(span);
    }
}

Toplam ve Bileşen Değerleri

TimeSpan'ın iki özellik grubu vardır. Hours, Minutes ve Seconds parçalara ayrılmış bileşenlerdir.

TotalMinutes gibi Total... sürümleri ise tüm süreyi tek bir birimde, ondalık sayı olarak ifade eder.

using System;

class Program
{
    static void Main()
    {
        TimeSpan span = TimeSpan.FromMinutes(90);
        Console.WriteLine(span.Hours);
        Console.WriteLine(span.TotalMinutes);
    }
}

Bileşen ve Toplam Değerler Açıklaması

90 dakika için Hours değeri 1, Minutes değeri 30'dur; çünkü süre 1 saat ve 30 dakikaya ayrılır.

Ancak TotalHours değeri 1.5, TotalMinutes değeri 90'dır; çünkü bunlar sürenin tamamını tek bir birim cinsinden sayar.

using System;

class Program
{
    static void Main()
    {
        TimeSpan span = TimeSpan.FromMinutes(90);
        Console.WriteLine(span.TotalHours);
    }
}

İki Tarihi Çıkarma

Bir DateTime değerinden başka bir DateTime değeri çıkardığınızda sonuç bir TimeSpan olur.

Bu, bir etkinliğin uzunluğu gibi iki an arasında ne kadar zaman geçtiğini bulmanın günlük kullanılan yoludur.

using System;

class Program
{
    static void Main()
    {
        DateTime start = new DateTime(2024, 3, 5, 9, 0, 0);
        DateTime end = new DateTime(2024, 3, 5, 11, 30, 0);
        TimeSpan diff = end - start;
        Console.WriteLine(diff.TotalHours);
    }
}

TimeSpan Değerlerini Toplama

TimeSpan değerlerini normal + ve - işleçleriyle toplayabilir veya çıkarabilirsiniz.

İki süreyi birleştirmek daha uzun bir süre verir; bu, birkaç zaman aralığını toplamak için kullanışlıdır.

using System;

class Program
{
    static void Main()
    {
        TimeSpan a = TimeSpan.FromMinutes(45);
        TimeSpan b = TimeSpan.FromMinutes(15);
        Console.WriteLine((a + b).TotalMinutes);
    }
}

Negatif Süreler

Bitiş başlangıçtan önceyse veya bir çıkarma işleminden sonra, TimeSpan negatif olabilir.

Duration yöntemi mutlak değeri döndürür, Negate ise işareti tersine çevirir. Bunlar yalnızca büyüklükle ilgilendiğinizde yardımcı olur.

using System;

class Program
{
    static void Main()
    {
        TimeSpan span = TimeSpan.FromHours(-3);
        Console.WriteLine(span.Duration().TotalHours);
    }
}

Süreleri Karşılaştırma

TimeSpan değerleri, sayılar gibi <, > ve == ile karşılaştırılır.

Bu sayede bir sürenin diğerinden uzun olup olmadığını denetleyebilir ve örneğin izin verilen en uzun süreyi uygulayabilirsiniz.

using System;

class Program
{
    static void Main()
    {
        TimeSpan limit = TimeSpan.FromHours(2);
        TimeSpan used = TimeSpan.FromMinutes(150);
        Console.WriteLine(used > limit);
    }
}

Sıfır ve Sabitler

TimeSpan.Zero geçen süre olmadığını belirtir ve toplamlar için kullanışlı bir başlangıç noktasıdır.

Ayrıca bir sürenin en küçük ve en büyük sınırları için TimeSpan.MinValue ve TimeSpan.MaxValue değerleri de vardır.

using System;

class Program
{
    static void Main()
    {
        TimeSpan total = TimeSpan.Zero;
        total += TimeSpan.FromMinutes(10);
        Console.WriteLine(total.TotalMinutes);
    }
}

TimeSpan Biçimlendirme

Bir TimeSpan'ı özel bir dizeyle biçimlendirebilirsiniz. Örneğin @"hh\:mm" saatleri ve dakikaları gösterir.

Ters eğik çizgiler, iki nokta üst üste işaretini kaçarak onun olduğu gibi görünmesini sağlar. Hızlı çıktı için varsayılan ToString genellikle yeterlidir.

using System;

class Program
{
    static void Main()
    {
        TimeSpan span = new TimeSpan(2, 5, 0);
        Console.WriteLine(span.ToString(@"hh\:mm"));
    }
}

Hızlı Kontrol

90 dakikalık bir TimeSpan'ınız var. Hangi özellik 1.5 değerini döndürür?

Özet

TimeSpan bir süredir. Bunu new TimeSpan(...) veya FromMinutes gibi fabrika yöntemleriyle oluşturun.

Bileşen özellikleri (Hours) ile Total... özellikleri birbirinden farklıdır. İki DateTime değerini çıkarmak bir TimeSpan üretir; süreleri toplayabilir, karşılaştırabilir ve biçimlendirebilirsiniz.

Sıkça Sorulan Sorular

“TimeSpan ve Süreler” dersi ücretsiz mi?

Evet — “TimeSpan ve Süreler” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve C# Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C# Academy kursu toplamda 4 dersten oluşur.

“TimeSpan ve Süreler” dersinde ne öğreneceğim?

Zaman aralıklarını ölçün. C# Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

C# Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te C# Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“TimeSpan ve Süreler” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu C# Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her C# Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. DateTimes Oluşturma
  2. Tarihleri Biçimlendirme
  3. TimeSpan ve Süreler
  4. Tarih Aritmetiği
← C# Academy Sayfasına Dön