Go语言基础(四)—String与其他基本数据类型的转换
Go语言中,不同类型的变量之间不能自动转换,需要显式转换,这与Java和C都有区别
var i int32 =100
var n1 float32 = float(i) //将int32转换为float32
注意:若将int64转换成int8,编译时不会报错,但是结果按照溢出处理,所以转换需要考虑范围。
func main() {var in64 int64 = 1651235425var in8 int8 = int8(in64)fmt.Println("in64=", in64, "in8=", in8)
输出:
in64= 1651235425 in8= 97
其他基本数据类型与String的转换
fmt包
- 可通过fmt.Sprintf(“参数”,表达式),Sprintf根据format参数生成格式化的字符串并返回该字符串。
func main() {var num1 int = 99var num2 float64 = 2.4467var str string = fmt.Sprintf("%d", num1)var str2 string = fmt.Sprintf("%f", num2)fmt.Printf("str类型:%T;str值:%s str2类型:%T,str2 值:%s", str, str, str2, str2)
}
输出:
str类型:string;str值:99 str2类型:string,str2 值:2.446700
Strconv包
- 可通过strconv包的函数
func main() {var num int = 99var num2 float64 = 23.456var bools bool = truestr := strconv.FormatInt(int64(num), 10)fmt.Printf("str type %T value %q \n", str, str)str1 := strconv.FormatFloat(num2, 'f', 10, 64) // 10为显示十位数字,fmt.Printf("str1 type is %T , value is %q \n", str1, str1)str2 := strconv.FormatBool(bools)fmt.Printf("str2 type is %T ,value is %q \n", str2, str2)
}
输出结果:
str type string value "99"
str1 type is string , value is "23.4560000000"
str2 type is string ,value is "true"
Int转String还可以使用Itoa函数
var ints int = 10str := strconv.Itoa(ints)fmt.Println(str)
String转其他基本数据类型
使用strconv包的ParseXXX
下面我们仅以bool类型为例,其它类型同理
var str1 = "true"boo, _ := strconv.ParseBool(str1)
该函数会返回两个值,第一个是bool 第二个返回错误,, _
可以忽略第二个返回值。我们此处只关心bool类型
注意
将String转换成其他数据类型时,要确保其参数能被转换成有效数据,若将“hello"转换成整数,那么Go会将其转换成0,其他类型也是转换成0所对应的值,如:bool型为false
Go语言基础(四)—String与其他基本数据类型的转换相关推荐
- [GO语言基础] 四.算术运算、逻辑运算、赋值运算、位运算及编程练习
作为网络安全初学者,会遇到采用Go语言开发的恶意样本.因此从今天开始从零讲解Golang编程语言,一方面是督促自己不断前行且学习新知识:另一方面是分享与读者,希望大家一起进步.前文介绍了Golang的 ...
- stringbuilder寻找字符串位置可能存在多个 java_Java 语言基础amp;String
Java 语言基础 String 字符串的不可变性 定义一个字符串 使用变量来赋值变量 String s2 = s; s2 保存了相同的引用值, 因为他们代表同一个对象 字符串连接 s = s.con ...
- java 数据类型转换的一场_Java基础 — 四类八种基本数据类型
整型:整数类型int 一般的数据. long 极大的数据. short 用于特定的场合,比如底层的文件处理或者需要控制占用存储单元空间量的大数组. byte 用于特定的场合,比如底层的文件处理或者需要 ...
- 【C】C语言基础(包括:关键字、数据类型、输入输出)
程序中的变与不变--变量与常量 标识符和关键字 标识符:用来标识程序中用到的变量名.函数名.类型名.数组名.文件名以及符号常量名的有效字符序列. 语法规则(部分): 标识符只能是由英文字母.数字和下划 ...
- String类与其他数据类型得转换
一:与基本数据类型或者包装类 二.String与char型数组得转换 三.String类与字节数组byte[]之间的转换 输出的是字符中得ASCII码. getBytes使用的默认得编码集 可以自主设 ...
- go语言基础(四):继承、方法
面向对象 在讲解具体面向对象编程之前,先说一下面向过程编程.我们前面学习都是面向过程的一种编程思想,接下来可以从生活中理解面向过程: 如果我们自己来修汽车,应该有哪些步骤呢? 第一步:找工具 第二步: ...
- java 格式化字符串_Java入门 - 语言基础 - 14.String类
1.概述 字符串广泛应用 在 Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串. 2.创建字符串 创建字符串最简单的方式如下: String gr ...
- 【机器视觉】 HDevelop语言基础(四)-流程控制语句
00. 目录 文章目录 00. 目录 01. 概述 02. if 03. if-else 04. elseif 05. while 06. until 07. for 08. continue 09. ...
- R语言基础入门(3)之数据类型与相应运算1
目录 一.常量与变量 1.常量 2.变量 二.数据类型 三.数值型向量 3.1 c() 函数 3.2 length(x) 3.3 numeric() 四.向量运算 1.标量和标量运算 2.向量与标量运 ...
最新文章
- 5万字的《Java面试手册》V1.0版本,高清PDF免费获取
- linux ping 报错 sendmsg: Operation not permitted
- 如何在linux下安装mysql5.7?
- 区块链BaaS云服务(32)同盾科技 IASC平台
- [Java基础][Java]toString()方法
- java正式测试数据隔离,开发环境要不要和测试环境隔离?
- AI能为智能手机带来哪些惊喜?Gartner列了这十大应用
- python urllib.parse_Python3的urllib.parse常用函数小结
- SqlServer得到生日(闰月考虑)
- java json 反序列化_java-如何将json字符串反序列化为对象
- c语言中用了double语句,求助 C语言 中 double语句用法
- Skyline软件二次开发初级——8如何在WEB页面中的三维地图上管理信息树
- iOS 16描述文件升级方法 iOS 16升级描述文件下载
- Matlab 黎卡提方程
- 学习《软件工程》心得
- office常用技巧总结【word篇】
- windows变量环境
- CVPR 2022 | 未知目标检测模块STUD:学习视频中的未知目标
- php打印马赛克,PHP-如何用PHP给一张图生成马赛克效果?
- Hmmer using Guide
热门文章
- PyTorch学习笔记:PyTorch初体验
- 【POJ3264】Balanced Lineup,线段树入门
- 20.校准相机——纯粹的方式,简单的方式,多平面校准_4
- 1.极限——ε-δ例子_7
- 2017.9.6 礼物 思考记录
- 2017.5.9 货车运输 思考记录
- 2017.3.8 太空飞行计划问题 失败总结
- 【英语学习】【Level 07】U05 Best Destination L5 Top choice
- MySQL令人咋舌的隐式转换
- 隐式连接时,windows下VS(包括2005、2008等)下配置OpenCV动态库的步骤