Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Menukar Rentetan Hari Minggu kepada masa.Hari Minggu dalam Pergi?

Bagaimana untuk Menukar Rentetan Hari Minggu kepada masa.Hari Minggu dalam Pergi?

Barbara Streisand
Barbara Streisandasal
2024-10-31 10:26:02756semak imbas

How to Convert a Weekday String to time.Weekday in Go?

Tukar Rentetan Hari Minggu kepada masa.Hari Minggu

Dalam Go, menukar rentetan hari dalam minggu kepada masa.Nilai hari minggu tidak disokong secara langsung oleh pakej masa terbina dalam. Untuk menangani perkara ini, pengguna sering melaksanakan fungsi tersuai untuk penukaran.

Fungsi Tersuai Menggunakan Tatasusunan

Satu pendekatan ialah mencipta rentetan hari pemetaan tatasusunan minggu ke masa. Nilai hari minggu. Walau bagaimanapun, kaedah ini boleh menjadi tidak cekap kerana carian linear yang diperlukan untuk mencari hari bekerja yang sepadan.

Fungsi Yang Diperbaiki Menggunakan Peta

Penyelesaian yang lebih cekap ialah menggunakan peta bukannya tatasusunan. Ini membolehkan carian yang lebih pantas dan pelaksanaan yang lebih mudah. Dengan memulakan peta dengan pasangan nilai kunci rentetan hari dalam minggu dan masa yang sepadan. Nilai hari minggu, fungsi boleh melakukan carian terus untuk mendapatkan masa yang diingini. Nilai hari minggu.

Contoh Pelaksanaan:

<code class="go">var daysOfWeek = map[string]time.Weekday{
    "Sunday":    time.Sunday,
    "Monday":    time.Monday,
    "Tuesday":   time.Tuesday,
    "Wednesday": time.Wednesday,
    "Thursday":  time.Thursday,
    "Friday":    time.Friday,
    "Saturday":  time.Saturday,
}

func parseWeekday(v string) (time.Weekday, error) {
    if d, ok := daysOfWeek[v]; ok {
        return d, nil
    }

    return time.Sunday, fmt.Errorf("invalid weekday '%s'", v)
}</code>

Ujian:

<code class="go">fmt.Println(parseWeekday("Monday")) // Output: Monday <nil>
fmt.Println(parseWeekday("Friday")) // Output: Friday <nil>
fmt.Println(parseWeekday("Invalid")) // Output: Sunday invalid weekday 'Invalid'</code>

Sambungan untuk Menghuraikan Nama Pendek

Selain itu, peta -pendekatan berasaskan boleh dilanjutkan untuk menghuraikan nama hari minggu yang pendek (cth., "Isnin" untuk hari Isnin) dengan memulakan peta dengan kedua-dua nama penuh dan pendek.

Kesimpulan

Menggunakan pendekatan berasaskan peta untuk menukar rentetan hari minggu kepada masa.Nilai hari minggu ialah teknik yang disyorkan dan idiomatik di Golang. Ia menawarkan carian dan fleksibiliti yang lebih pantas untuk mengendalikan kedua-dua nama penuh dan pendek hari kerja.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan Hari Minggu kepada masa.Hari Minggu dalam Pergi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn