GO语言学习笔记4-int与string类型转换
int与string类型之间相互转换可以借助strconv包里自带的函数实现。
string转换成int
函数原型:
// base指定进制(2到36),如果base为0,则会从字符串前置判断,
// "0x"是16进制,"0"是8进制,否则是10进制;
// bitSize指定结果必须能无溢出赋值的整数类型,
// 0、8、16、32、64 分别代表 int、int8、int16、int32、int64。
func ParseInt(s string, base int, bitSize int) (i int64, err error)
// Atoi是ParseInt(s, 10, 0)的简写
func Atoi(s string) (i int, err error)
代码示例:
package main
import (
"fmt"
"strconv"
)
func main() {
// 字符串数字 "256" 转换成 256
numStr1 := "256"
numberInt1, error := strconv.ParseInt(numStr1, 10, 8)
if error == nil {
fmt.Printf("numberInt1的类型为:%T\n", numberInt1)
fmt.Println("转换成功:numberInt1 = ", numberInt1)
} else {
fmt.Println("转换错误:", error)
}
numStr2 := "256"
numberInt2, error := strconv.Atoi(numStr2)
if error == nil {
fmt.Printf("numberInt2的类型为:%T\n", numberInt2)
fmt.Println("转换成功:numberInt2 = ", numberInt2)
} else {
fmt.Println("转换错误:", error)
}
numStr3 := "9876543210"
numberInt3, error := strconv.ParseInt(numStr3, 10, 64)
if error == nil {
fmt.Printf("numberInt3的类型为:%T\n", numberInt3)
fmt.Println("转换成功:numberInt3 = ", numberInt3)
} else {
fmt.Println("转换错误:", error)
}
}
代码输出:
转换错误: strconv.ParseInt: parsing "256": value out of range
numberInt2的类型为:int
转换成功:numberInt2 = 256
numberInt2的类型为:int64
转换成功:numberInt2 = 9876543210
int转换成string
函数原型:
// 表示返回i的base进制的字符串。base 必须在2到36之间,
// 结果中会使用小写字母'a'到'z'表示大于10的数字
func FormatInt(i int64, base int) string
// Itoa是FormatInt(i, 10) 的简写
func Itoa(i int) string
// Sprintf根据format参数生成格式化的字符串并返回该字符串
func Sprintf(format string, a ...interface{}) string
代码示例:
package main
import (
"fmt"
"strconv"
)
func main() {
// 数字 65 转换成字符串 "65"
num1 := 65
string1 := strconv.Itoa(num1)
fmt.Printf("string1的类型为:%T\n", string1)
fmt.Println(string1)
// 数字 256 转换成字符串 "256"
var num2 int64
num2 = 256
string2 := strconv.FormatInt(num2,10)
fmt.Printf("string2的类型为:%T\n", string2)
fmt.Printf("%s\n", string2)
// 数字 123456 转换成字符串 "123456"
num3 := 123456
string3 := fmt.Sprintf("%d", num3)
fmt.Printf("string3的类型为:%T\n", string3)
fmt.Println(string3)
// 如果不用这种的,可能转出来的不是你想象中的那样
num4 := 97
string4 := string(num4)
fmt.Printf("string4的类型为:%T\n", string4)
// number_str = P, 对应到了相应的ascci码上了
fmt.Println(string4)
}
代码输出:
string1的类型为:string
65
string2的类型为:string
256
string3的类型为:string
123456
string4的类型为:string
a
个人主页:
GO语言学习笔记4-int与string类型转换的更多相关文章
- GO语言学习笔记(一)
GO语言学习笔记 1.数组切片slice:可动态增长的数组 2.错误处理流程关键字:defer panic recover 3.变量的初始化:以下效果一样 `var a int = 10` `var ...
- Go语言学习笔记十: 结构体
Go语言学习笔记十: 结构体 Go语言的结构体语法和C语言类似.而结构体这个概念就类似高级语言Java中的类. 结构体定义 结构体有两个关键字type和struct,中间夹着一个结构体名称.大括号里面 ...
- Go语言学习笔记七: 函数
Go语言学习笔记七: 函数 Go语言有函数还有方法,神奇不.这有点像python了. 函数定义 func function_name( [parameter list] ) [return_types ...
- Go语言学习笔记三: 常量
Go语言学习笔记三: 常量 定义常量 常量就是在声明后不能再修改的量. const x int = 100 const y string = "abc" const z = &qu ...
- C# 动态生成word文档 [C#学习笔记3]关于Main(string[ ] args)中args命令行参数 实现DataTables搜索框查询结果高亮显示 二维码神器QRCoder Asp.net MVC 中 CodeFirst 开发模式实例
C# 动态生成word文档 本文以一个简单的小例子,简述利用C#语言开发word表格相关的知识,仅供学习分享使用,如有不足之处,还请指正. 在工程中引用word的动态库 在项目中,点击项目名称右键-- ...
- Go语言学习笔记(1)——顺序编程
Go语言学习笔记这一堆主要是<Go语言编程>(人民邮电出版社)的读书笔记.中间会穿插一些零碎的点,比如源码学习之类的.大概就是这样吧. 1. 顺序编程 1.1 变量 变量的声明: var ...
- 2017-04-21周C语言学习笔记
C语言学习笔记:... --------------------------------- C语言学习笔记:学习程度的高低取决于.自学能力的高低.有的时候生活就是这样的.聪明的人有时候需要.用笨的方法 ...
- 2017-05-4-C语言学习笔记
C语言学习笔记... ------------------------------------ Hello C语言:什么是程序:程序是指:完成某件事的既定方式和过程.计算机中的程序是指:为了让计算机执 ...
- Go语言学习笔记十三: Map集合
Go语言学习笔记十三: Map集合 Map在每种语言中基本都有,Java中是属于集合类Map,其包括HashMap, TreeMap等.而Python语言直接就属于一种类型,写法上比Java还简单. ...
- Go语言学习笔记十二: 范围(Range)
Go语言学习笔记十二: 范围(Range) rang这个关键字主要用来遍历数组,切片,通道或Map.在数组和切片中返回索引值,在Map中返回key. 这个特别像python的方式.不过写法上比较怪异使 ...
随机推荐
- select去掉默认样式
今天遇到的问题,并在这里做一下记录和总结 去除select下拉框默认样式 select { /*Chrome和Firefox里面的边框是不一样的,所以复写了一下*/ border: solid 1px ...
- Blue Star(日剧:今夜 可否拥你入怀歌词)
BLUE STAR-COLOR CREATION Oh I Know I need you in my life ひさしぶりの 译:时隔许久的 やわらかなかせがふきぬける 清风温柔吹拂 むねのおくの ...
- composer配合github发布管理代码包
前言 今日使用composer结合github管理代码包过程,方便日后需要,特此记录 流程 1 最大同性交友网站github创建自己项目,在自己项目新增composer.json文件 2 compos ...
- 微信小程序 ----- this.getOpenerEventChannel is not a function
小程序 添加新的功能, 页面跳转后,通过事件的发布订阅,实现 from => to 或者 to=> from 数据传递 1. 跳转到指定页面. 通过 wx.navigateTo() .请参 ...
- python map 的用法
map的用法 ——.我们来分析map在python的源码 class map(object): """ map(func, *iterables) --> map ...
- 思考-继续思考在数据库中两个表join的问题
##在资源有限的情况下,如何做两个大表的join? --- 假设系统资源:内存1G,大表10G,小表2G. --- 都拿到内存中进行笛卡尔集肯定不行,内存没有那么大. 最简单的办法是对两个表建索引,但 ...
- MySQL-4- 索引及执行计划
1. 索引作用 提供了类似于书中目录的作用,目的是为了优化查询 2. 索引的种类(算法) B树索引 Hash索引 R树 Full text GIS 3. B树 基于不同的查找算法分类介绍 B-tr ...
- Ubuntu 19.04
Ubuntu 19.04自动挂载机械盘 创建要挂载的文件夹 sudo mkdir /home/soldier/SOLDIER 获取UUID sudo blkid 分区的TYPE是“ntfs” 编辑/e ...
- Java 使用JDBC连接查询操作数据
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import java.sql. ...
- 学习WPF-1
学习WPF-1 最近到新公司,需要使用WPF来做界面开发,我原先是使用WinForm来做界面开发的,所以对于现在使用WPF来开发,需要先学习一段时间了,考核的内容目前也还没定下来做什么, 但终归是使用 ...