1、表达式: T(v)

含义: 将值v转换为类型T

var i int32 = 32
var f float64 = float64(i)
var u unit8 = unit8(i)

  

2、基本类型转string类型

使用strconv包的函数

func FormatBool(b bool) string

func FormatInt(i int64, base int) string

func FormatUint(i uint64, base int) string

func FormatFloat(f float64, fmt byte, prec, bitSize int) string

func Itoa(i int) string

var n3 int64 = 999
var n4 float64 = 56.420
var n5 uint = 888
var b1 bool = false
var n6 int = 222
	
str = strconv.FormatInt(n3,10) // 10表示十进制	
str = strconv.FormatFloat(n4,'f',10,64) // 'f'表示按照-ddd.dddd格式输出,10表示小数位保留10位,64:表示这个小数是float64
str = strconv.FormatUint(uint64(n5),10) // 10表示十进制
str = strconv.FormatBool(b1)
str = strconv.Itoa(n6)

  

3、string类型转基本数据类型

使用strconv里的函数:

func ParseBool(str string) (value bool, err error)

func ParseInt(s string, base int, bitSize int) (i int64, err error)

func ParseUint(s string, base int, bitSize int) (n uint64, err error)

func ParseFloat(s string, bitSize int) (f float64, err error)

func Atoi(s string) (i int, err error)

var str1 string = "false"
b,_:= strconv.ParseBool(str1) // _表示忽略第二个返回值
	
var str2 string = "1234"
num2,_:= strconv.ParseInt(str2,10,64) // 10表示10进制,64表示int64(无溢出赋值的整数类型)

var str3 string = "4567"
num3,_:= strconv.Atoi(str3)
	
var str4 string = "8910"
num4,_:= strconv.ParseUint(str4,10,64) // 10表示10进制,64表示int64(无溢出赋值的整数类型)
	
var str5 string = "12.3645"
num5,_:= strconv.ParseFloat(str5,10) // 10表示10进制

  

4、特殊情况

string转成基本数据类型时,要确保string类型能够转成成效的数据,否则都为基本类型的默认值

例如:把"hello"转成一个整数,将其变为0,其他类型也一样float32变为0bool变为false

posted on 2022-03-02 18:41  smile学子  阅读(36)  评论(0编辑  收藏  举报