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 基本类型转换的更多相关文章

  1. Golang的类型转换实战案例

    Golang的类型转换实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数据类型概述 基础数据类型概述,博主推荐阅读: 布尔型: https://www.cnblogs. ...

  2. golang数据类型转换

    int--string //string到int value_int,err:=strconv.Atoi(string) //int到string str:=strconv.Itoa(value_in ...

  3. golang强制类型转换

    github.com/Unknwon/com包的使用 package main import ( "fmt" "github.com/Unknwon/com" ...

  4. Golang处理数据库的nil数据

    在用golang获取数据库的数据的时候,难免会遇到可控field.这个时候拿到的数据如果直接用string, time.Time这样的类型来解析的话会遇到panic. 那么如何处理这个问题呢,第一个出 ...

  5. Go语言的类型转换和类型断言

    https://my.oschina.net/chai2010/blog/161418 https://studygolang.com/articles/9335  类型转换.类型断言和类型切换 ht ...

  6. golang学习笔记13 Golang 类型转换整理 go语言string、int、int64、float64、complex 互相转换

    golang学习笔记13 Golang 类型转换整理 go语言string.int.int64.float64.complex 互相转换 #string到intint,err:=strconv.Ato ...

  7. Go语言的基本类型转换-golang类型转换

    简单整理一下Golang的基本类型转换,作为备忘: 1.整形到字符串: var i int = 1 var s string 3.  s = strconv.Itoa(i) 或者 s = Format ...

  8. Golang类型转换

    类型转换 1.int转string strconv.Itoa(i) 2.string转int i, err = strconv.Atoi(s) 或者 i, err = ParseInt(s, 10, ...

  9. Golang 类型转换,断言和显式强制转换

    1 前言 类型转换,可以用断言(只能使用在interface{}类型转换成其它类型)和显式类型强制转换(常规是用于基本类型) 2 代码 //graphql-go func(params graphql ...

随机推荐

  1. ModelSerializer 使用知识点_序列化和反序列化用法区别

    1.ModelSerializer  如下 from api_test.errorCode.errorCode import Statusclass RelatedbSerializer(serial ...

  2. Luogu P5468 [NOI2019]回家路线 (斜率优化、DP)

    题目链接: (luogu) https://www.luogu.org/problemnew/show/P5468 题解: 爆long long毁一生 我太菜了,这题这么简单考场上居然没想到正解-- ...

  3. spring cloud:config-eureka-refresh-bus-rabbitmq

    config-server-eureka-bus-rabbitmq 1. File-->new spring starter project 2.add dependency <paren ...

  4. Django REST framework的解析器与渲染器

    解析器 解析器的作用 解析器的作用就是服务端接收客户端传过来的数据,把数据解析成自己可以处理的数据.本质就是对请求体中的数据进行解析. 在了解解析器之前,我们要先知道Accept以及ContentTy ...

  5. Mybatis 一对多 关联查询查询

    一对多 与 一对一 查询有许多相似之处. 最主要的区别是 查询结果是list,与之对应的标签为collection. 班级和学生,一个班有多个学生,而每个学生只能属于一个班. 此时班级编号作为学生表的 ...

  6. Springboot 后台管理框架halo.kotlin

    https://gitee.com/backControl/halo-kotlin 现在开了两个分支,一个分支在做数据分析,一个分支是集成spring oauth2.0技术 之后会接入最新的技术和实现 ...

  7. AI工程师职业规划和学习路线完整版

    AI工程师职业规划和学习路线完整版   如何成为一名机器学习算法工程师 成为一名合格的开发工程师不是一件简单的事情,需要掌握从开发到调试到优化等一系列能 力,这些能力中的每一项掌握起来都需要足够的努力 ...

  8. 微信小程序 API 数据缓存

    微信小程序 数据缓存 (类似于 cookie) wx.setStorage() 将数据存储在本地缓存中制定的 key 中.会覆盖掉原来该 key 对应的内容,数据存储生命周期跟小程序本身一致,即除用户 ...

  9. ros 下常用的依赖库

    <buildtool_depend>catkin</buildtool_depend> <build_depend>nav_msgs</build_depen ...

  10. OpenStack Nova 高性能虚拟机之 CPU 绑定

    目录 文章目录 目录 前文列表 KVM KVM 的功能列表 KVM 工具集 KVM 虚拟机的本质是什么 vCPU 的调度与性能问题 Nova 支持的 vCPU 绑定 vcpu\_pin\_set 配置 ...