string转基本类型细节|学习笔记

简介: 快速学习string转基本类型细节

开发者学堂课程【Go语言核心编程 - 基础语法、数组、切片、Map:sstring转基本类型细节】与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/625/detail/9532


string转基本类型细节

内容介绍:

一、注意事项

二、Golong对于不能成功将字符串转换成有效数据的操作

一、string类型转换成基本数据类型

在将 string 类型转换成基本数据类型时,确保 string 类型能够转换成有效数据。一般来讲,把基本数据转换为 string 较为简单。例如将12.35转 string 一般不会出现异常或错误。


二、Golong对于不能成功将字符串转换成有效数据的操作

1.理论

可将"123"转换成一个整数,但不能把"hello”转换成一个整数。若将“hello”转换成整数Golong 并非进行报错,而是接将其值转换成0

其他类型同理:float=>0  bool=>false

2.实际操作

案例说明(1)

var str4 string = "hello”

var n3 int64 = 11

n3, _= strconv.ParseInt(str4,10,64)

fmt.Printf( "n3 type %T n3=%v\n", n3,n3)输出结果:n3 type int64 n3=0

//n3转成int64但值为0,其原因为无法将hello转换成整数,仅把类型进行转换。n3本身为int64故并未发生变化,但由于hello无法转换成整数,只能填入默认值0。假设n3原值为11,此时结果仍然被转换为默认值0。

案例说明(2)

True=>bool可进行但hello=>bool无法进行转换

Var str string =”true”

Var b bool

B , _=strconv.ParseBool(str)

Fmt.Printf(“b type %T b=%v\n”,b,b)

输出结果: b type bool b=true

将 true 变为 hellook。

string =” hellook转换为布尔值

输出结果:b type bool b=false

变为默认值false。假设默认值为true

输出结果:b type bool b=false

依旧变为 flase,故说明转换未成功,变为默认值。

相关文章
|
5月前
|
存储 Java 开发者
String数组的初始化及操作技巧
String数组的初始化及操作技巧
每天一道面试题之String属于基础数据类型吗?
每天一道面试题之String属于基础数据类型吗?
|
7月前
|
存储 程序员 C++
在C++语言中string-vector的字符串作用类型
在C++语言中string-vector的字符串作用类型
103 0
|
7月前
|
存储 缓存 安全
String的不可变性
String的不可变性
43 0
|
存储
String你知道多少细节(含面试题)
String你知道多少细节(含面试题)
56 0
|
存储 缓存 安全
第十章、String字符串
在C语言中要表示字符串只能使用字符数组或者字符指针,可以使用标准库提供的字符串系列函数完成大部分操作,但是这种将数据和操作数据方法分离开的方式不符合面向对象的思想,而字符串应用又非常广泛,因此Java语言专门提供了String类。在开发和校招笔试中,字符串也是常客。面试中也频繁被问到,比如:String、StringBuff和StringBulider之间的区别等。由于String的不可更改特性,为了方便字符串的修改,Java中又提供StringBuilder和StringBuffer类。
55 0
|
C语言 C++ 容器
【C++初阶】string 类的认识与学习
【C++初阶】string 类的认识与学习
123 0
|
存储 C++
C++【STL】之string模拟实现
C++ STL string类模拟实现,常用接口详细讲解,干货满满!
58 0
|
存储 缓存 C语言
【C++ STL】string模拟实现
本文将讲述怎么模拟实现string类,有些同学可能会问了,我要实现这个有什么用?会用不就可以了吗?
75 0
|
编译器 C++
【C++】-- String深浅拷贝详解
【C++】-- String深浅拷贝详解
218 0
【C++】-- String深浅拷贝详解