Golang转字符串

Golang转字符串

Golang转字符串

在Go语言中,字符串是一个不可变的字节序列。在编程中经常会遇到需要将其他类型数据转换为字符串的情况,本文将介绍在Go语言中如何进行各种类型数据到字符串的转换。

基本数据类型转字符串

int转字符串

package main

import (
    "fmt"
    "strconv"
)

func main() {
    num := 123
    str := strconv.Itoa(num)
    fmt.Println(str)
}

运行结果:

123

float64转字符串

package main

import (
    "fmt"
    "strconv"
)

func main() {
    num := 3.14
    str := strconv.FormatFloat(num, 'f', -1, 64)
    fmt.Println(str)
}

运行结果:

3.14

bool转字符串

package main

import (
    "fmt"
)

func main() {
    b := true
    str := fmt.Sprintf("%t", b)
    fmt.Println(str)
}

运行结果:

true

数组、切片和Map转字符串

数组转字符串

package main

import (
    "fmt"
    "strings"
)

func main() {
    arr := []int{1, 2, 3, 4, 5}
    str := fmt.Sprintf("%v", arr)
    fmt.Println(str)
}

运行结果:

[1 2 3 4 5]

切片转字符串

package main

import (
    "fmt"
    "strings"
)

func main() {
    slice := []string{"apple", "banana", "cherry"}
    str := strings.Join(slice, ",")
    fmt.Println(str)
}

运行结果:

apple,banana,cherry

Map转字符串

package main

import (
    "fmt"
)

func main() {
    m := map[string]int{
        "apple":  2,
        "banana": 3,
    }
    str := fmt.Sprintf("%v", m)
    fmt.Println(str)
}

运行结果:

map[apple:2 banana:3]

结构体转字符串

自定义结构体转字符串

package main

import (
    "fmt"
)

type Person struct {
    Name string
    Age  int
}

func (p Person) String() string {
    return fmt.Sprintf("Name: %s, Age: %d", p.Name, p.Age)
}

func main() {
    p := Person{Name: "Alice", Age: 30}
    str := fmt.Sprint(p)
    fmt.Println(str)
}

运行结果:

Name: Alice, Age: 30

将接口类型转换为字符串

package main

import (
    "fmt"
    "reflect"
)

func ToString(i interface{}) string {
    switch v := i.(type) {
    case int:
        return strconv.Itoa(v)
    case float64:
        return strconv.FormatFloat(v, 'f', -1, 64)
    default:
        return fmt.Sprintf("%v", v)
    }
}

func main() {
    fmt.Println(ToString(42))
    fmt.Println(ToString(3.14))
    fmt.Println(ToString("hello"))
}

运行结果:

42
3.14
hello

以上就是在Go语言中实现各种数据类型转换为字符串的方法。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程