Golang数据类型转换笔记

本文详细介绍了Go语言中如何进行数据类型转换,包括使用`fmt.Sprintf`和`strconv`包将各种类型转换为字符串,以及将字符串转换回整型和浮点型的方法。示例代码展示了具体的转换过程和注意事项。
摘要由CSDN通过智能技术生成

数据类型转换

package main

import (
	"fmt"
	"strconv"
)

func main() {
	// 一、各类型转换成字符串类型:fmt.Sprintf
	//			int十进制%d float浮点数%f bool布尔%t byte字符%c
	var d int = 20
	var f float64 = 3.14
	var t bool = true
	var c byte = 'b'

	str1 := fmt.Sprintf("%d", d)
	fmt.Printf("值:%v  类型:%T\n", str1, str1)

	str2 := fmt.Sprintf("%f", f)
	fmt.Printf("值:%v  类型:%T\n", str2, str2)

	str3 := fmt.Sprintf("%t", t)
	fmt.Printf("值:%v  类型:%T\n", str3, str3)

	str4 := fmt.Sprintf("%c", c)
	fmt.Printf("值:%v  类型:%T\n", str4, str4)





	// 二、int和float类型转换成字符串类型:strconv
	//  1、FormatInt(int64的数值, 进制)
	var intNum int = 2
	str5 := strconv.FormatInt(int64(intNum), 10)
	fmt.Printf("值:%v  类型:%T\n", str5, str5)

	//	2、FormatFloat(float64类型的数值, 格式化方式, 保留的小数点 -1即不对小数点做处理, 格式化类型为32或64)
	/*				 格式化方式:
	'f':十进制
	'e':十进制指数e
	'E':十进制指数E
	*/
	var floatNum float32 = 3.1415
	str6 := strconv.FormatFloat(float64(floatNum), 'f', 3, 64)
	fmt.Printf("值:%v  类型:%T\n", str6, str6)





	// 三、srting字符串转换成int整型:strconv.ParseInt(string类型数据, 进制, 32位或64位)
	// 			会返回两个值,转换失败会返回0,另一个接收错误信息
	str7 := "12345.12"
	num1, _ := strconv.ParseInt(str7, 10, 64)
	fmt.Printf("值:%v  类型:%T\n", num1, num1)

	// 四、string字符串转换成float类型:strconv.ParseFloat(string类型数据, 32位或64位)
	// 			会返回两个值,另一个接收错误信息
	str8 := "12345.1234"
	num2, _ := strconv.ParseFloat(str8, 64)
	fmt.Printf("值:%v  类型:%T\n", num2, num2)
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值