Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menukar rentetan kepada jenis int dalam golang

Bagaimana untuk menukar rentetan kepada jenis int dalam golang

PHPz
PHPzasal
2023-03-22 14:23:534302semak imbas

Dalam bahasa Go, menukar rentetan kepada int ialah operasi biasa. Apabila kita perlu menukar rentetan kepada jenis integer, kita boleh melakukannya menggunakan fungsi yang disediakan dalam pakej strconv. Dalam artikel ini, kami akan menelusuri kod sampel untuk memperincikan cara menukar rentetan kepada jenis integer menggunakan fungsi daripada pakej strconv.

  1. strconv.Atoi

Fungsi Atoi dalam pakej strconv boleh menukar rentetan kepada jenis int. Berikut ialah contoh kod menggunakan fungsi Atoi untuk penukaran rentetan:

package main

import (
    "fmt"
    "strconv"
)

func main() {
    str := "123"
    i, err := strconv.Atoi(str)
    if err != nil {
        fmt.Println("转换失败")
    } else {
        fmt.Println(i)
    }
}

Kod ini mula-mula mentakrifkan pembolehubah rentetan str, dan kemudian kita memanggil fungsi Atoi dalam pakej strconv untuk menukar rentetan kepada integer taip . Jika penukaran berjaya, fungsi Atoi akan mengembalikan nilai jenis int. Jika penukaran gagal, fungsi mengembalikan objek ralat. Dalam kod sampel, kami menggunakan pernyataan if untuk menentukan sama ada penukaran berjaya, dan jika ia gagal, mesej ralat yang sepadan akan dikeluarkan.

  1. strconv.ParseInt

Fungsi ParseInt boleh menukar rentetan kepada jenis int64. Berikut ialah contoh kod untuk penukaran rentetan menggunakan fungsi ParseInt:

package main

import (
    "fmt"
    "strconv"
)

func main() {
    str := "123"
    i, err := strconv.ParseInt(str, 10, 64)
    if err != nil {
        fmt.Println("转换失败")
    } else {
        fmt.Println(i)
    }
}

Dalam kod ini, kami menggunakan fungsi ParseInt untuk menukar rentetan kepada jenis int64. Fungsi ini menerima tiga parameter: rentetan yang akan ditukar, asas yang akan ditukar (10 mewakili perpuluhan), dan jenis pulangan yang dijangka (int64 dalam contoh). Jika penukaran berjaya, fungsi mengembalikan nilai jenis int64. Jika penukaran gagal, objek ralat akan dikembalikan.

  1. Perbandingan strconv.Atoi dan strconv.ParseInt

Kami telah memperkenalkan dua kaedah menukar rentetan kepada jenis integer, kemudian Apakah perbezaannya antara dua kaedah ini?

  • Jenis Pulangan

Fungsi Atoi menukar rentetan kepada jenis int, manakala fungsi ParseInt menukar rentetan kepada jenis int64.

  • Had Julat

Memandangkan julat jenis int adalah lebih kecil daripada jenis int64, anda perlu memberi perhatian sama ada integer yang diwakili oleh rentetan melebihi julat daripada jenis int apabila menggunakan fungsi Atoi .

  • Ralat pengendalian

Fungsi Atoi akan mengembalikan objek ralat apabila penukaran gagal, manakala fungsi ParseInt memerlukan kami menentukan secara manual sama ada penukaran berjaya.

  1. Ringkasan

Dalam artikel ini, kami telah menunjukkan cara menukar rentetan kepada jenis integer menggunakan fungsi daripada pakej strconv. Sama ada anda menggunakan fungsi Atoi atau fungsi ParseInt, ia mempunyai ciri dan skop aplikasinya sendiri. Anda perlu memilih kaedah yang sesuai mengikut senario tertentu. Semasa penggunaan, kita perlu memberi perhatian kepada julat perwakilan dan pengendalian ralat rentetan. Saya harap artikel ini dapat membantu anda memahami dengan lebih baik cara menukar antara jenis rentetan dan integer dalam bahasa Go.

Atas ialah kandungan terperinci Bagaimana untuk menukar rentetan kepada jenis int dalam golang. 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