Where
by Where
~1 min read

分类

之前我一直都是用 PHP 写代码的,从来没有遇到过需要转换数据类型的情况,但现在开始使用 Golang 写代码了,遇到了很多需要转换数据类型的情况,在这里总结一下备用。

package main

import (
	"fmt"
	"strconv"
)

func main() {
	// string => int
	s := "123000000000"
	i, err := strconv.Atoi(s)
	if err != nil {
		panic(err)
	}
	fmt.Println(i)
	// string => int64
	i64, err := strconv.ParseInt(s, 10, 64)
	if err != nil {
		panic(err)
	}
	fmt.Println(i64)
	// string => uint64
	ui64, err := strconv.ParseUint(s, 10, 64)
	if err != nil {
		panic(err)
	}
	fmt.Println(ui64)
	// string =>float
	fl64, err := strconv.ParseFloat(s, 64)
	if err != nil {
		panic(err)
	}
	fmt.Println(fl64)
	// int => string
	s = strconv.Itoa(i)
	fmt.Println(s)
	// int64 => string
	s = strconv.FormatInt(i64, 10)
	fmt.Println(s)
	// uint64 => string
	s = strconv.FormatUint(ui64, 10)
	fmt.Println(s)
	// float64 => string
	s = strconv.FormatFloat(fl64, 'f', 10, 64)
    fmt.Println(s)
    
    // 数字类型之间转换
	//i8 := int8(i)
	//i16 := int16(i)
	//i32 := int32(i)
	//i64 = int64(i)
	//ui8 := uint8(i)
	//fl32 := float32(i)
}