Go语言第四章(类型转换)
类型转换实际开发里不同类型之间经常需要互相转换字符串转数字、数字转字符串、浮点数转整数、整数转浮点数等等。数字的转换比如有一个浮点数3.1415926535想把它变成整数可以用int()来转换packagemainimportfmtfuncmain(){num:3.1415926535intNum:int(num)fmt.Println(intNum)// 3}可以看到int()会把浮点数转成整数并直接舍去小数部分不是四舍五入。其他数值类型的转换写法也类似记起来很简单——跟定义类型时的名字一模一样int()转为intint8()转为int8int16()转为int16int32()转为int32int64()转为int64uint()转为uintuint8()转为uint8uint16()转为uint16uint32()转为uint32uint64()转为uint64float32()转为float32float64()转为float64数字转字符串数字和字符串之间的转换要用strconvstring convert字符串转换包。比如把整数3转成字符串packagemainimport(fmtstrconv)funcmain(){num:3strNum:strconv.Itoa(num)fmt.Printf(类型: %T,值: %v,strNum,strNum)// 类型: string,值: 3}几点说明导入多个包时用()分组每个包独占一行。strconv.Itoa()就是Int to ASCII把整数转成字符串字符串本质上是字符序列。fmt.Printf()里%T打印类型%v打印值。字符串转数字反过来字符串转数字也很常见。Go 里字符串和数字不能直接运算必须先转成同一类型。比如这样会报错vara10varb20varcab// 错误字符串和数字不能直接运算这时可以用strconv.Atoi()把字符串转成整数packagemainimport(fmtstrconv)funcmain(){str:10num,_:strconv.Atoi(str)fmt.Printf(类型: %T,值: %v,num,num)// 类型: int,值: 10}Atoi是ASCII to Int的缩写。它会返回两个值转换结果和错误。转换失败时第二个返回值不为nil这里用_忽略错误表示暂时不处理失败情况。字符串转布尔值字符串转布尔用strconv.ParseBool()。它同样返回「结果 错误」两个值packagemainimport(fmtstrconv)funcmain(){str:trueb,_:strconv.ParseBool(str)fmt.Printf(类型: %T,值: %v,b,b)// 类型: bool,值: true}ParseBool能识别的真值有1、t、T、TRUE、true、True假值有0、f、F、FALSE、false、False。其他字符串都会转换失败。布尔值转字符串反过来用strconv.FormatBool()把布尔值转成字符串结果只会是true或falsepackagemainimport(fmtstrconv)funcmain(){flag:truestr:strconv.FormatBool(flag)fmt.Printf(类型: %T,值: %v,str,str)// 类型: string,值: true}作业数值转换声明一个float64变量值为9.99用int()转成整数并打印再把结果用float64()转回去观察小数部分是否还在。数字转字符串声明一个int变量表示年龄用strconv.Itoa()转成字符串再用fmt.Printf打印类型和值确认类型是string。字符串转数字声明两个字符串15和27分别用strconv.Atoi()转成整数后相加打印和。布尔转换把字符串1、false、yes分别传给strconv.ParseBool()打印每次转换的结果和错误这次不要用_忽略错误看看哪些能成功。综合练习声明字符串价格199.5和折扣标记true。先把价格用strconv.ParseFloat(str, 64)转成float64折扣标记用ParseBool转成布尔若享受折扣则打八折最后用strconv.FormatFloat把应付金额转成字符串并打印。

相关新闻

丙午年六月十九建军节思

丙午年六月十九建军节思

丙午年六月十九建军节思赤雷烈长空,醒狮惊寰宇。知恶身受剑,明善心懂局。里上有净地,外下无正曲。柳色守春安,士气望狼屈。尽职赴生死,履责得几许?本是家儿郎,根为华夏玉。安宁靠兵将&#xff0…

2026/8/2 18:42:38阅读更多 →
如何批量获取精准同步歌词?LRCGET让本地音乐库焕然一新

如何批量获取精准同步歌词?LRCGET让本地音乐库焕然一新

如何批量获取精准同步歌词?LRCGET让本地音乐库焕然一新 【免费下载链接】lrcget Utility for mass-downloading LRC synced lyrics for your offline music library. 项目地址: https://gitcode.com/gh_mirrors/lr/lrcget 你是否厌倦了在本地音乐播放时手动搜…

2026/8/2 18:40:38阅读更多 →
单片机毕设项目:基于 STM32/51 单片机的光敏电阻环境光检测智能照明设备开发 基于单片机多传感器融合坐姿健康提醒灯光系统设计与实现(021301)

单片机毕设项目:基于 STM32/51 单片机的光敏电阻环境光检测智能照明设备开发 基于单片机多传感器融合坐姿健康提醒灯光系统设计与实现(021301)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

2026/8/2 18:40:38阅读更多 →
VSCode + SDCC 搭建免费高效的 STM8 开发环境全攻略

VSCode + SDCC 搭建免费高效的 STM8 开发环境全攻略

1. 项目概述:为什么选择 VSCode SDCC 开发 STM8?如果你和我一样,是从 STM32 或者 8051 这类更主流的平台转过来接触 STM8,第一感觉可能就是“工具链有点别扭”。官方的 STVD Cosmic 或者 IAR 环境,要么是 IDE 略显老…

2026/8/2 19:57:05阅读更多 →
彻底解决Git推送Permission Denied:SSH密钥配置与端口443备用方案详解

彻底解决Git推送Permission Denied:SSH密钥配置与端口443备用方案详解

1. 项目概述:为什么你的Git推送总被拒之门外?“Permission Denied”这个红色的错误提示,对于任何一个使用Git进行版本控制,特别是与GitHub这类远程仓库打交道的开发者来说,都太熟悉了。它就像一个冷酷的门卫&#xff0…

2026/8/2 19:57:05阅读更多 →
基于VC++与MFC的指纹识别系统:从算法原理到工程实现

基于VC++与MFC的指纹识别系统:从算法原理到工程实现

1. 项目概述与核心价值最近在整理硬盘里的老项目,翻出来一个十多年前用VC和MFC做的指纹识别系统。现在看,界面是有点“复古”,但整个架构和实现思路,放到今天依然有很强的参考价值。指纹识别听起来高大上,好像都是安防…

2026/8/2 19:57:05阅读更多 →
游戏任务系统设计:从心流体验到数据驱动的系统工程

游戏任务系统设计:从心流体验到数据驱动的系统工程

1. 从“打怪升级”到“心流体验”:游戏任务系统的本质聊到游戏任务系统,很多人的第一反应可能是“去A点杀10只怪,然后回来交任务”。这确实是任务系统最基础、最经典的形态,但如果你现在做游戏设计还停留在这个层面,那…

2026/8/2 19:57:05阅读更多 →
游戏任务系统设计:从状态机到事件驱动的实战架构解析

游戏任务系统设计:从状态机到事件驱动的实战架构解析

1. 游戏任务系统设计:从概念到实现的全景解析做游戏,尤其是角色扮演、开放世界或者MMO,任务系统绝对是绕不开的核心骨架。它不仅仅是给玩家一串待办清单,更是驱动叙事、引导探索、塑造角色成长和维持玩家长期留存的关键引擎。一个…

2026/8/2 19:57:05阅读更多 →
从0到1掌握C++ Streams:新手必备的函数式编程库入门教程

从0到1掌握C++ Streams:新手必备的函数式编程库入门教程

从0到1掌握C Streams:新手必备的函数式编程库入门教程 【免费下载链接】Streams Lazy evaluation in C - http://jscheiny.github.io/Streams/ 项目地址: https://gitcode.com/gh_mirrors/str/Streams C Streams是一个强大的函数式编程库,它通过延…

2026/8/2 19:55:04阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/2 0:00:10阅读更多 →
限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

更多请点击: https://intelliparadigm.com 第一章:AI模板批量生成的核心价值与落地全景 AI模板批量生成正从实验性工具演进为现代软件工程的关键基础设施。它通过语义理解、上下文感知与结构化约束,将重复性高、模式明确的代码/文档/配置生成…

2026/8/2 0:00:12阅读更多 →
如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南 【免费下载链接】web-archives Browser extension for viewing archived and cached versions of web pages, available for Chrome, Edge and Safari 项目地址: https://gitcode.com/gh_mirrors/we/web-a…

2026/8/2 0:00:13阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/2 0:00:10阅读更多 →
限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

限时公开!某头部SaaS公司内部AI模板工厂架构文档(含5类行业模板源码+性能压测报告)

更多请点击: https://intelliparadigm.com 第一章:AI模板批量生成的核心价值与落地全景 AI模板批量生成正从实验性工具演进为现代软件工程的关键基础设施。它通过语义理解、上下文感知与结构化约束,将重复性高、模式明确的代码/文档/配置生成…

2026/8/2 0:00:12阅读更多 →
如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南

如何快速找回消失的网页:Web Archives浏览器扩展终极指南 【免费下载链接】web-archives Browser extension for viewing archived and cached versions of web pages, available for Chrome, Edge and Safari 项目地址: https://gitcode.com/gh_mirrors/we/web-a…

2026/8/2 0:00:13阅读更多 →
无损视频剪辑终极指南:如何实现快速高效的多媒体处理

无损视频剪辑终极指南:如何实现快速高效的多媒体处理

无损视频剪辑终极指南:如何实现快速高效的多媒体处理 【免费下载链接】lossless-cut The swiss army knife of lossless video/audio editing 项目地址: https://gitcode.com/gh_mirrors/lo/lossless-cut 在数字媒体创作领域,视频编辑处理的质量损…

2026/8/2 1:29:34阅读更多 →
AI辅助本科论文写作:8大工具评测与高效使用指南

AI辅助本科论文写作:8大工具评测与高效使用指南

1. 本科生论文写作的AI辅助现状本科毕业论文是每个大学生必须跨越的一道坎。记得我当年写论文时,光是文献检索就花了整整两周时间,打印的参考文献堆满了半个书桌。如今AI技术的发展为学术写作带来了革命性变化,合理使用这些工具可以节省80%以…

2026/8/2 2:32:55阅读更多 →
如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手

如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手

如何快速配置大麦自动抢票系统:从零开始搭建Python抢票助手 【免费下载链接】ticket-purchase 大麦自动抢票,支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase 还在为抢不到热门演唱会门票…

2026/8/2 2:09:20阅读更多 →