demo.go(**其他类型转成字符串类型**,strconv.FormatXXX()):
package mainimport ("fmt""strconv")func main() {// 字符串转换成字符切片slice := []byte("hello") // 强制类型转换 string-->[]bytefmt.Println(slice) // [104 101 108 108 111]// 字符切片转换成字符串slice2 := []byte{'h', 'e', 'l', 'l', 'o', 97}fmt.Println(string(slice2)) // helloa 强制类型转换 []byte-->string// strconv.FormatXXX() 其他类型转换成字符串str1 := strconv.FormatBool(true) // bool-->stringfmt.Println(str1) // truefmt.Println(strconv.FormatInt(123, 10)) // 123 int-->string 10表示十进制fmt.Println(strconv.Itoa(123)) // 123 十进制int-->stringfmt.Println(strconv.FormatFloat(3.14, 'f', 6, 64)) // 3.140000 float-->string 6:保留6位 64:float64}
demo.go(**字符串类型转成其他类型**,strconv.ParseXXX()):
package mainimport ("fmt""strconv")func main() {// strconv.ParseXXX() 字符串转换成其他类型// strconv.ParseBool() string-->boolb, err_info := strconv.ParseBool("false")if err_info != nil { // 如果有错误信息fmt.Println("类型转换出错")} else {fmt.Println(b) // false}// strconv.ParseInt() string-->int64val, err_info := strconv.ParseInt("11011001", 2, 64) // 2:二进制 64:int64fmt.Println(val) // 217// strconv.ParseFloat() string-->float64val2, err_info := strconv.ParseFloat("3.1415", 64) // 64:float64fmt.Println(val2) // 3.1415// strconv.Atoi() string-->十进制intval3, _ := strconv.Atoi("123")fmt.Println(val3) // 123}
