1.string转int

有两种方法,可以使用func Atoi(s string) (i int, err error),Atoi代表Ascii to Integer。还可以使用func ParseInt(s string, base int, bitSize int) (i int64, err error),base为进制,值为2~36,如果为0,则会根据字符串自动判断,前置为"0x"的是16进制,前置为"0"的是8进制,其余的为10进制,bitSize是返回的整数类型,0、8、16、32分别代表int、int8、int16、int32。

func main() {a,_:=strconv.Atoi("123456")fmt.Printf("a values %v\n",a)b,_:=strconv.ParseInt("123456",10,32)fmt.Printf("b values %v\n",b)c,_:=strconv.ParseInt("123456",10,16)fmt.Printf("c values %v\n",c)d,_:=strconv.ParseInt("111",2,32)fmt.Printf("d values %v\n",d)
}

以上代码会打印出

a values 123456
b values 123456
c values 32767
d values 7

看一下c,由于返回的是int16类型的值,int16类型的值的范围为-32768~32767,超过了返回类型的范围,会被截断,所以选择返回值类型时要选择正确。

2.int转string

使用func Itoa(i int) string方法,将int类型的转string类型。

func main() {var i int = 12345s:=strconv.Itoa(i)fmt.Printf("s values %v,type is %T",s,s)
}

以上会输出

s values 12345,type is string

3.string转bool

func main(){fmt.Println(strconv.ParseBool("t"))fmt.Println(strconv.ParseBool("TRUE"))fmt.Println(strconv.ParseBool("true"))fmt.Println(strconv.ParseBool("True"))fmt.Println(strconv.ParseBool("0"))fmt.Println(strconv.ParseBool("f"))
}

以上会输出

true <nil>
true <nil>
true <nil>
true <nil>
false <nil>
false <nil>

4.string转float

func ParseFloat(s string, bitSize int) (f float64, err error)mian(){f,err:=strconv.ParseFloat("20.58",64)if err!=nil {panic(err)}fmt.Printf("%v,%T",f,f)
}

输出

20.58,float64

5.float转string

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

其中fmt表示格式,’f’(-ddd.dddd)、’b’(-ddddp±ddd,指数为二进制)、’e’(-d.dddde±dd,十进制指数)、’E’(-d.ddddE±dd,十进制指数)、’g’(指数很大时用’e’格式,否则’f’格式)、’G’(指数很大时用’E’格式,否则’f’格式);prec表示控制的精度(排除指数部分):对’f’、’e’、’E’,它表示小数点后的数字个数;对’g’、’G’,它控制总的数字个数。如果prec 为-1,则代表使用最少数量的、但又必需的数字来表示f。

mian(){str:=strconv.FormatFloat(23.5670,'f',-1,64)str2:=strconv.FormatFloat(23.5670,'f',5,64)fmt.Println(str)fmt.Println(str2)
}

输出

23.567
23.56700

[]byte转string

Res := string(bytes)

string转[]byte

[]byte(str)

Golang中各种类型转换相关推荐

  1. Golang 中 Slice的分析与使用(含源码)

    文章目录 1.slice结构体 2.slice初始化 3.append操作 4.slice截取 5.slice深拷贝 6.值传递还是引用传递 参考文献 众所周知,在golang中,slice(切片)是 ...

  2. golang中 type func() 用法分析

    在看golang 的http服务部分代码时,被golang 中的 type func()写法难住了,一时没看懂代码.后来查资料后,有了一点理解. 在golang中可以通过这样简单实现一个http服务 ...

  3. Golang中Buffer高效拼接字符串以及自定义线程安全Buffer

    本文原创文章,转载注明出处,博客地址 https://segmentfault.com/u/to... 第一时间看后续精彩文章.觉得好的话,顺手分享到朋友圈吧,感谢支持. Go中可以使用"+ ...

  4. C#.NET 中的类型转换

    前些天,碰到了数据类型转换与格式化问题,在网上查找了一下,有人已经把它写了出来,粘贴如下,共大家分享: C#.NET 中的类型转换 C# 出来也有些日子了,最近由于编程的需要,对 C# 的类型转换做了 ...

  5. 如何在golang中关闭bufio.reader_Golang 并发模型系列:1. 轻松入门流水线模型

    Go语言中文网,致力于每日分享编码.开源等知识,欢迎关注我,会有意想不到的收获! Golang作为一个实用主义的编程语言,非常注重性能,在语言特性上天然支持并发,它有多种并发模型,通过流水线模型系列文 ...

  6. HQL语句中数据类型转换,及hibernate中createQuery执行hql报错

    一.HQL语句中数据类型转换: 我们需要从数据库中取出序号最大的记录,想到的方法就是使用order by子句进行排序(desc倒序),然后取出第一个对象,可是当初设计数据库时(我们是在原来的数据库的基 ...

  7. go语言的iota是什么意思_关于Golang中的iota

    快速一览 iota是Golang中提供的一个简化常量和枚举编程的标识符,合理的使用这个标识符可以让代码变得更简洁,省去大量的不必要的代码. 比如下面的这个常量定义 const ( a = 1 b = ...

  8. Golang中的panic和recover(捕获异常)

    Golang中的panic和recover(捕获异常) 参考文章: (1)Golang中的panic和recover(捕获异常) (2)https://www.cnblogs.com/zhzhlong ...

  9. golang 中string和int类型相互转换

    总结了golang中字符串和各种int类型之间的相互转换方式: string转成int: test_int, err := strconv.Atoi(test_string) if err != ni ...

最新文章

  1. 招聘行业颠覆者【伯小乐】| 手摸手产品研究院
  2. 怎样隐藏“滚动条”?
  3. RedHat7.0启动后黑屏
  4. ConcurrentModificationException并发修改异常
  5. [_CN] Eclipse精要与高级开发技术 note
  6. 详解python运行三种方式_详解python调用cmd命令三种方法
  7. 星外主机销售系统源码_业务员大客户销售订货订单管理系统源码开发外包解析...
  8. php 正则表达式 文档,php的正则表达式完全手册
  9. matlab显示图片
  10. 我的盖洛普“优势识别器”测试证书
  11. 对立与统一(期货反向跟单-交易员培训法则)
  12. 重大发现:微信新上线的“群接龙”功能,你还不知道吗?
  13. ps绘制超级五角星教程
  14. Python画水平和垂直线
  15. 《项目管理知识体系指南》(PMBOK®指南)第3 版
  16. 查看IC卡芯片的位置
  17. 使用Git时,Failed to connect to github.com port 443 after 21100 ms: Timed out
  18. python(pyqt5)多线程解决界面无响应
  19. rad2deg() 函数
  20. 基于树莓派运行OpenWrt固件

热门文章

  1. Coursera吴恩达机器学习课程 总结笔记及作业代码——第1,2周
  2. 【深度学习】基于STL10数据集构建 图像去噪自编码网络 的实验
  3. 【项目实战课】人人免费可学,基于Pytorch的BCNN鸟类细粒度图像分类实战
  4. what引导的宾语从句
  5. 8.5 代酷睿的 13 英寸旗舰 — Yoga S730 长测
  6. vue(9) - 收藏集 - 掘金
  7. MATLAB:图像水平、垂直、水平垂直镜像、转置、旋转变换
  8. 魔百盒m401a折腾Armbian+qinglong -- 1
  9. html5图片动画源码,不容错过的jQuery图片动画及源码
  10. HTML5 CSS登录注册表单界面示例源码