


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、GO语言基本数据类型总结电脑资料这篇文章主要介绍了 GO语言基本数据类型 , 较为详细的了 GO语言的基本数据类型 , 对于 GO语言的学习有一定的借鉴参考价值 , 需要的朋友可以参考下本文实例总结了GO语言基本数据类型,行注释: / 块注释: /* .*/可以这么说,除了数字开头的不允许,符号开头的不允许,关键字不允许,其他的Unicode 字符组合都可以。“ _33”也可以是标识符、“我们”也可以是标识符。标识符也区分大小写。(1)、以大写字母开头的标识符是公开的。(这个很有意思)(2)、其他任何标识符都是私有的。(3)、空标识符“ _”是一个占位符,用于赋值操作的时候,丢弃、忽略某个值。
2、通常这样用:go的方法一般会返回2 个值,一个通常的返回、一个错误标识。如 fmt.Println(x)会返回 2 个值,一个是打印的字节数,一个是相应的 error值,那么 count,_= fmt.Println(x)这行代码就忽略了相应的 error值。(1)可以自动推断类型,如:代码如下 :const a = 5(2)可以显式指定类型,如:代码如下 :const a int16 = 6/ int16是一个整形类型(PS:go 语言常量、变量定义的格式均为:关键字常量(变量) 名 类型 =值)(3)可以一次声明多个常量,如: const ( a = 0 ; b = 2) ,这叫分组声明。
3、此时,第一个常量被默认设置为 0,后续的常量默认设置为前面常量的表达式。(PS: 但是希望用 const (a b)表示 a=0,b=0常量分组定义,第一个常量必须赋值、或为iota这样的是不行的,)(PPS:注意, go 语言中一般不需要分号来表示分隔,编译器会自动在每行的末尾添加分号,当然,添加分号也没有错,不过像 liteide 这样的 IDE 的自动格式化一般会帮你把分号删除,然后帮你换行)(4)关键字 iota表示连续的无类型的整数常量,iota默认为 0,并逐步递增。即,代码如下 :const(a = iota; b ; c )(5)一行多个赋值中, iota不相互影响。每次iot
4、a出现,它的值为 0,如:代码如下 :const (i, j, k = 2 * iota, iota, iota + 2m, n, l)此时,i 、j 的值均为 0,k 的值为 2,m、n、l的值分别为 2 、1 、3(PS:go 语言支持一行赋多个值)变量有 2 种定义方式:(1)一种是用关键字var ,例如:代码如下 :var i int /这里会自动设置默认值0, 如果是字符串,默认为空或者:代码如下 :var i = 8 /声明同时赋值,自动推导其类型或者:代码如下 :var k int = 16 /指明类型,声明并赋值或者:代码如下 :var ( a int; b int; c in
5、t) /分组声明,跟常量类似,(2)另一种是用快速变量声明,就是用 := 操作符,它会声明并初始化一个变量,可以自动推导类型。不过这种声明有一个限制,它只能在函数内部使用,在函数外部会报错。如:代码如下 :name := "chandler qian" /自动推导类型为string值得注意到是, := 操作符是声明并初始化,就是说,在同一个作用域内,这个变量必须未声明过,不然是错误。如下:代码如下 :k, b := 7, 8fmt.Printf("before k=%d,b=%dn", k, b)if k := 1; k != -1 b := 3fmt.
6、Printf("inner k=%d,b=%dn", k, b)fmt.Printf("after k=%d,b=%dn", k, b)在下面的 if作用于内, k、b 重新用 := 声明赋值,但没问题,因为出了 if作用域,它们就消失了。结果为:before k=7,b=8inner k=1,b=3after k=7,b=8而 if语句改为这样:代码如下 :if k = 1; k != -1 b := 3fmt.Printf("inner k=%d,b=%dn", k, b)那么最后的输出就是:before k=7,b=8inner
7、 k=1,b=3after k=1,b=8可见,“ =” 是全局作用的赋值,而,“ := ” 则会在自己的作用域内创建变量并赋值。(3)整形字面量的类型会自动推断为int ,浮点字面量会自动推断为 float64,复数字面量会自动推断为plex128Go 语言会严格筛选使用比较操作符(<、<=、=、!= 、>=、>)进行比较的值。这两个值必须是相同类型或实现了相同的接口。如:代码如下 :func test0() var a int = 5var b float32 = 4.4if a > b fmt.Println(">")由于 a 和 b 类型不匹配,所以编译错误:invalidoperation:a >b (mismatched types int and float32),再看下面这个:代码如下 :func test1() var b float32 = 4.4if b > 7
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023-2025北京高三(上)期末历史汇编:源远流长的中华文化章节综合
- 环保产业未来发展趋势与应对策略
- 微服务架构2025年考试试题及答案
- 技术员考试试题及答案总结
- 2025年产业链战略试题及答案
- 大一上学期的自我总结总结模版
- 城市配送体系优化与末端配送效率提升物流行业投资分析报告
- 2025年公司战略与风险管理的挑战与机遇试题及答案
- 2025年文化旅游演艺项目特色小镇产业融合与创新发展报告
- 行政管理考试复习策略的比较与分析:试题及答案
- 电网工程设备材料信息参考价2025年第一季度
- 2024年安徽省初中学业水平考试生物试题含答案
- 2024年浙江省中考英语试题卷(含答案解析)
- MOOC 理解马克思-南京大学 中国大学慕课答案
- 说明书hid500系列变频调速器使用说明书s1.1(1)
- 三宝证盟荐亡往生功德文疏
- 钢结构课程设计--钢结构平台设计
- 涉及饮用水卫生安全产品卫生许可证申请表
- 供热对供电煤耗影响量的计算
- 绿城集团精装修验收标准-
- 突发安全生产事故应急救援预案(现场处理方案)
评论
0/150
提交评论