8. golang 基本类型转换
golang 类型转换只能显性转换 不能自动转换
基本数据类型间的转换
var x1 int = 2
var x2 int16
var x3 int8 x2 = 200 + x1
x3 = 200 + x1
.\test.go:3:8: imported and not used: "fmt"
.\test.go:21:5: cannot use 200 + x1 (type int) as type int16 in assignment
.\test.go:22:5: cannot use 200 + x1 (type int) as type int8 in assignment
var x1 int = 2
var x2 int16
var x3 int8
x2 = 200 + int16(x1)
x3 = 200 + int8(x1)
.\test.go:22:11: constant 200 overflows int8
基本数据类型和 string 之间的转换
1. 使用 fmt.sprintf 函数进行
package main
import "fmt"
func main() {
var x1 int = 88
var x2 float32 = 3.45
var x3 string
x3 = fmt.Sprintf("this is a int %d \n", x1) //注意一定要使用双引号
fmt.Print(x3)
x3 = fmt.Sprintf("this is a float str %f \n", x2)
fmt.Print(x3)
}
2. 使用 strconv 函数
package main import (
"fmt"
"strconv"
) func main() {
var xx int = 123 s := strconv.FormatInt(int64(xx), 16)
fmt.Print(s) }
字符串string 转换为 基本数据类型
使用strconv 内容
package main import (
"fmt"
"strconv"
) func main() {
var xx string = "1232123"
xxx, _ := strconv.ParseInt(xx, 10, 32)
fmt.Printf("this xxx is %T %d", xxx, xxx)
// this xxx is int64 1232123 } 只能返回64位 如果需要32位 要自己在进行一次转换 注意事项 字符串强行转换为int 会有以下状况
package main
import (
"fmt"
"strconv"
)
func main() {
var xx string = "hello"
xxx, _ := strconv.ParseInt(xx, 10, 32)
fmt.Printf("this xxx is %T %d", xxx, xxx)
// this xxx is int64 0
}
8. golang 基本类型转换的更多相关文章
- Golang的类型转换实战案例
Golang的类型转换实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数据类型概述 基础数据类型概述,博主推荐阅读: 布尔型: https://www.cnblogs. ...
- golang数据类型转换
int--string //string到int value_int,err:=strconv.Atoi(string) //int到string str:=strconv.Itoa(value_in ...
- golang强制类型转换
github.com/Unknwon/com包的使用 package main import ( "fmt" "github.com/Unknwon/com" ...
- Golang处理数据库的nil数据
在用golang获取数据库的数据的时候,难免会遇到可控field.这个时候拿到的数据如果直接用string, time.Time这样的类型来解析的话会遇到panic. 那么如何处理这个问题呢,第一个出 ...
- Go语言的类型转换和类型断言
https://my.oschina.net/chai2010/blog/161418 https://studygolang.com/articles/9335 类型转换.类型断言和类型切换 ht ...
- golang学习笔记13 Golang 类型转换整理 go语言string、int、int64、float64、complex 互相转换
golang学习笔记13 Golang 类型转换整理 go语言string.int.int64.float64.complex 互相转换 #string到intint,err:=strconv.Ato ...
- Go语言的基本类型转换-golang类型转换
简单整理一下Golang的基本类型转换,作为备忘: 1.整形到字符串: var i int = 1 var s string 3. s = strconv.Itoa(i) 或者 s = Format ...
- Golang类型转换
类型转换 1.int转string strconv.Itoa(i) 2.string转int i, err = strconv.Atoi(s) 或者 i, err = ParseInt(s, 10, ...
- Golang 类型转换,断言和显式强制转换
1 前言 类型转换,可以用断言(只能使用在interface{}类型转换成其它类型)和显式类型强制转换(常规是用于基本类型) 2 代码 //graphql-go func(params graphql ...
随机推荐
- mssql因为手贱修改了服务配置的最大内存,造成无法启动
mssql数据库设置内存太小,造成无法启动服务. 解决办法: 1.用命令行形式启动最精简版的mssql服务,另外再用一个新的命令行去修改配置,将内存设置为无限制. 命令行要记得用管理员身份运行比较稳 ...
- linux 系统下 tar 的压缩与解压缩命令
1.压缩 [small@sun shine]# tar -zcvf java.tar.gz java java/ java/default/ java/default/THIRDPARTYLICENS ...
- PHP基础教程 10款人气暴涨的PHP开源工具
若想创建动态而又新颖的Web应用程序,PHP便是理想的选择.不用说,在Web开发世界里,PHP是最流行的语言之一.一些非常好用的PHP开源工具着实拯救了不少开发任务繁重的PHP开发 人员,减轻他们的开 ...
- 【BZOJ1066】 [SCOI2007]蜥蜴
Description 在一个r行c列的网格地图中有一些高度不同的石柱,一些石柱上站着一些蜥蜴,你的任务是让尽量多的蜥蜴逃到边界外. 每行每列中相邻石柱的距离为1,蜥蜴的跳跃距离是d,即蜥蜴可以跳到平 ...
- 源码阅读-Kingfisher
最后更新:2018-01-16 使用教程: 官方的链接 使用 Kingfisher 处理网络图片的读取与缓存 1. 开始使用 桥接 KingFisher, 利用 KingfisherCompatibl ...
- LVM逻辑卷的扩充
LVM 的全名是 Logical Volume Manager,中文可以翻译作逻辑滚动条管理员.之所以称为”滚动条”可能是因为可以将 filesystem 像滚动条一样伸长或缩短.LVM 的作法是将几 ...
- jq完成省市区街道四级联动
之前看的省市区街道四级联动的插件,感觉和公司要求的有些不符合,就自己写了一个 因为要读取本地json文件,所以要跑下服务器 下载browser-sync 然后在项目目录下运行browser-sync ...
- [CSP-S模拟测试]:最小距离(最短路)
题目传送门(内部题97) 输入格式 第一行三个整数$n,m,p$,第二行$p$个整数$x_1\sim x_p$表示特殊点的编号.接下来$m$行每行三个整数$u,v,w$表示一条连接$u$和$v$,长度 ...
- MapReduce数据倾斜的解决方式
数据倾斜:由于数据分布不均匀,造成数据大量的集中到一点,造成数据热点.map /reduce程序执行时,reduce节点大部分执行完毕,但是有一个或者几个reduce节点运行很慢,导致整个程序的处理时 ...
- 利用IKVM在C#中调Java程序(总结+案例)
IKVM.NET是一个针对Mono和微软.net框架的java实现,其设计目的是在.NET平台上运行java程序.本文将比较详细的介绍这个工具的原理.使用入门(如何java应用转换为.NET应用.), ...