代码
// string类型转基本数据类型
package main import (
"fmt"
"strconv"
) func main() {
str1 := "false"
var b bool
// 函数ParseBool会返回两个值
// "_"表示会忽略掉第二个返回值
b, _ = strconv.ParseBool(str1)
fmt.Printf("str1原值为%q, 转换为%T类型, 值为%v\n", str1, b, b) // str1原值为"false", 转换为bool类型, 值为false str2 := "-100"
var n1 int64
// ParseInt函数中,第二个参数表示进制,第三个参数表示位数
// 注意该函数的返回值为int64类型
n1, _ = strconv.ParseInt(str2, 10, 64)
fmt.Printf("str2原值为%q, 转换为%T类型, 值为%v\n", str2, n1, n1) // str2原值为"-100", 转换为int64类型, 值为-100 str3 := "128"
var n2 uint8
// n3的类型是uint64
n3, _ := strconv.ParseUint(str3, 10, 64)
n2 = uint8(n3)
fmt.Printf("str3原值为%q, 转换为%T类型, 值为%v\n", str3, n2, n2) // str3原值为"128", 转换为uint8类型, 值为128 str4 := "-3.141592678"
var f1 float32
// f2的类型为float64
f2, _ := strconv.ParseFloat(str4, 64)
f1 = float32(f2)
// 注意转换之后精度有损失
fmt.Printf("str4原值为%q, 转换为%T类型, 值为%v\n", str4, f1, f1) // str4原值为"-3.141592678", 转换为float32类型, 值为-3.1415927 // 要确保string类型能够转换成有效的数据,否则会被转换成对应类型的默认值,
// 比如:字符串"today"被转换为整数后值为0,转换成浮点数值为0,转换成布尔值为false。
str5 := "today"
c1, _ := strconv.ParseInt(str5, 10, 64)
fmt.Printf("str5原值为%q, 转换为%T类型, 值为%v\n", str5, c1, c1) // str5原值为"today", 转换为int64类型, 值为0
c2, _ := strconv.ParseFloat(str5, 64)
fmt.Printf("str5原值为%q, 转换为%T类型, 值为%v\n", str5, c2, c2) // str5原值为"today", 转换为float64类型, 值为0
c3, _ := strconv.ParseBool(str5)
fmt.Printf("str5原值为%q, 转换为%T类型, 值为%v\n", str5, c3, c3) // str5原值为"today", 转换为bool类型, 值为false str6 := "711today"
c4, _ := strconv.ParseInt(str6, 10, 64)
fmt.Printf("str6原值为%q, 转换为%T类型, 值为%v\n", str6, c4, c4) // str6原值为"711today", 转换为int64类型, 值为0
c5, _ := strconv.ParseFloat(str6, 64)
fmt.Printf("str6原值为%q, 转换为%T类型, 值为%v\n", str6, c5, c5) // str6原值为"711today", 转换为float64类型, 值为0
c6, _ := strconv.ParseBool(str6)
fmt.Printf("str6原值为%q, 转换为%T类型, 值为%v\n", str6, c6, c6) // str6原值为"711today", 转换为bool类型, 值为false
}
总结

查看源代码

最新文章

  1. 编译Android AOSP代码
  2. oss文件删除策略
  3. 第20章 使用LNMP架构部署动态网站环境
  4. php--yii2框架错误提示
  5. 网络虚拟化技术 TUN/TAP MACVLAN MACVTAP
  6. TP函数
  7. zoj 3785 What day is that day? (打表找规律)
  8. CF_225B _Well-known Numbers
  9. [Android学习笔记]Android Library Project的使用
  10. 前端技术之_CSS详解第五天
  11. Java多线程:wait(),notify(),notifyAll()
  12. Java关于读取Excel文件~xlsx xls csv txt 格式文件~持续汇总~
  13. 快速去水印(win10换图3D工具)
  14. win10以管理员身份运行cmd方法
  15. the default terminal(gnome-terminal) start up fail
  16. pThreads线程(一) 基本API
  17. C# ConcurrentStack实现
  18. VMware Workstation Pro14安装
  19. 解决Delphi 2010启动时卡死并报“displayNotification: 堆栈溢出”错误
  20. bzoj 2571: Getting Rid of the Holidays

热门文章

  1. 适用于填空题出题 的随机算法 PHP
  2. JS循环结构
  3. Headless Windows
  4. php reset()函数 语法
  5. C#判断网络链接状态
  6. #1126-JSP客户端请求
  7. Http请求状态大全
  8. LDAP常见错误码
  9. [CSP-S模拟测试]:ants(回滚莫队)
  10. 使用java语言实现一个队列(两种实现比较)(数据结构)