Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Analisis mendalam kaedah penukaran antara rentetan dan nombor di Golang

Analisis mendalam kaedah penukaran antara rentetan dan nombor di Golang

PHPz
PHPzasal
2024-01-16 09:18:191265semak imbas

Analisis mendalam kaedah penukaran antara rentetan dan nombor di Golang

Di Golang, penukaran antara rentetan dan nombor adalah operasi yang sangat biasa. Artikel ini akan memperkenalkan secara terperinci kaedah penukaran bersama antara rentetan dan nombor dalam Golang dan memberikan contoh kod khusus.

1. Tukar rentetan kepada nombor

Di Golang, terdapat beberapa kaedah untuk menukar rentetan kepada nombor:

  1. Gunakan fungsi Atoi() pakej strconv

Fungsi Atoi() boleh menukar rentetan Tukar kepada beberapa jenis int. Kod sampel adalah seperti berikut:

package main

import (
    "fmt"
    "strconv"
)

func main() {
    str := "123"
    num, err := strconv.Atoi(str)
    if err != nil {
        fmt.Println("字符串转换为数字失败")
    } else {
        fmt.Printf("转换后的数字是%d,类型是%T", num, num)
    }
}

Hasil berjalan:

转换后的数字是123,类型是int
  1. Gunakan fungsi ParseInt() bagi fungsi pakej strconv

ParseInt() untuk menukar rentetan kepada nombor arbitrari. Kod sampel adalah seperti berikut:

package main

import (
    "fmt"
    "strconv"
)

func main() {
    str := "101"
    num, err := strconv.ParseInt(str, 2, 0)
    if err != nil {
        fmt.Println("字符串转换为数字失败")
    } else {
        fmt.Printf("转换后的数字是%d,类型是%T", num, num)
    }
}

Hasil berjalan:

转换后的数字是5,类型是int64
  1. Gunakan fungsi Scanf() bagi fungsi pakej fmt

Scanf() untuk menukar rentetan input kepada nombor. Kod sampel adalah seperti berikut:

package main

import (
    "fmt"
)

func main() {
    var num int
    fmt.Printf("请输入一个数字:")
    _, err := fmt.Scanf("%d", &num)
    if err != nil {
        fmt.Println("输入错误")
    } else {
        fmt.Printf("转换后的数字是%d,类型是%T", num, num)
    }
}

Hasil larian:

请输入一个数字:123
转换后的数字是123,类型是int

2. Tukar nombor kepada rentetan

Di Golang, terdapat kaedah berikut untuk menukar nombor kepada rentetan:

  1. Gunakan fungsi Itoa() strconv pakej

Itoa() fungsi boleh menukar nombor jenis int kepada rentetan. Kod sampel adalah seperti berikut:

package main

import (
    "fmt"
    "strconv"
)

func main() {
    num := 123
    str := strconv.Itoa(num)
    fmt.Printf("转换后的字符串是%s,类型是%T", str, str)
}

Hasil berjalan:

转换后的字符串是123,类型是string
  1. Gunakan fungsi Sprintf() bagi pakej fmt

Fungsi Sprintf() boleh menukar sebarang jenis data kepada rentetan. Kod sampel adalah seperti berikut:

package main

import (
    "fmt"
)

func main() {
    num := 123
    str := fmt.Sprintf("%d", num)
    fmt.Printf("转换后的字符串是%s,类型是%T", str, str)
}

Hasil berjalan:

转换后的字符串是123,类型是string
  1. Gunakan fungsi FormatInt() bagi fungsi pakej strconv

FormatInt() untuk menukar sebarang nombor kepada rentetan. Kod sampel adalah seperti berikut:

package main

import (
    "fmt"
    "strconv"
)

func main() {
    num := 5
    str := strconv.FormatInt(int64(num), 2)
    fmt.Printf("转换后的字符串是%s,类型是%T", str, str)
}

Hasil berjalan:

转换后的字符串是101,类型是string

Ringkasan:

Di atas adalah penjelasan terperinci kaedah penukaran bersama antara rentetan dan nombor dalam Golang, dan contoh kod khusus disediakan. Dalam pembangunan sebenar, memilih kaedah yang sesuai untuk penukaran boleh meningkatkan kecekapan kod Pada masa yang sama, perhatian harus diberikan kepada ralat yang mungkin berlaku semasa proses penukaran.

Atas ialah kandungan terperinci Analisis mendalam kaedah penukaran antara rentetan dan nombor di 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