包含标签:go 的文章
-
-
-
Golang详解类型断言
Type Assertion Type Assertion(中文名叫:类型断言),通过它可以做到以下几件事情 检查 i 是否为 nil 检查 i 存储的值是否为某个类型 具体的使用方式有两…… -
Golang流程控制:defer 延迟语句
延迟调用 defer 的用法很简单,只要在后面跟一个函数的调用,就能实现将这个 xxx 函数的调用延迟到当前函数执行完后再执行。 defer xxx() 这是一个很简…… -
Golang数据类型(结构体)
type结构体名struct属性名属性类型属性名属性类型...比如我要定义一个可以存储个人资料名为 Profile 的结构体,可以这么写age intmother *Profile // 指针father *Profile // 指针若相邻的属性(字段)是相同类型,可以合并写在一起age intmother *Profile // 指针father *Profile // 指针通过结构体可以定义一个组合字面量规则一:当最后一个字段和结果不在同一行时, -
Golang数据类型(数组)
最后我们用显示声明但是不赋值的方式声明了变量array3,该数组的长度为我们手动指定的10,而该数组里的元素则为10个整数0,也就是在声明变量但是不赋值的情况下,Go自动为我们给整数数据类型分配的零值。针对数组array1我们通过[5]手动指明了它的长度(注意:这里array1里的元素个数刚好为0,1,2,3,4总共5个整数,和array1的长度匹配,因为数组的长度(或大小)指的是该数组能容纳的最大元素个数,并不是当前数组里有多少个元素。如果将数组作为参数传入一个函数,Go会为该数组创建一个副本, -
Golang数据类型(数字型)
的整数类型,其中有符号整数按二进制位又可以分为int8(对应8bit大小的有符号整数),int16(对应16bit大小的有符号整数),int32(对应32bit大小的有符号整数),int64(对应64bit大小的有符号整数),以及int(与CPU相关)五种类型。,为什么会有两个值?, 其作用是用来指定我们想将字符串转换为哪类的有符号整数类型,其取值范围为0,8,16,32,64,分别表示int, int8, int16,int32和int64。浮点数用来表示带有小数点的数字,比如1.0,-45.332。 -
Golang中rune和Byte,字符和字符串有什么不一样
Go语言中,string就是只读的采用utf8编码的字节切片(slice) 因此用len函数获取到的长度并不是字符个数,而是字节个数。for循环遍历输出的也是各个字节。rune是int32的别名,代表字符的Unicode编码,采用4个字节存储,将string转成rune就意味着任何一个字符都用4个字节来存储其unicode值,这样每次遍历的时候返回的就是unicode值,而不再是字节了,这样就可以解决乱码问题了。 -
Golang数据类型(字符串)
要知道strings.Join()的用法,必须知道什么是切片(Slice),而要理解切片,又必须先要知道什么是数组(Array),所谓数组可以理解为一种特殊的列表,区别是列表可以包含多种数据类型的元素,而数组只能包含同一种数据类型的元素,即一个数组里的所有元素必须全部为字符串,或者全部为整数。因为英文字母的编码为ASCII,可以用字节表示。在Go中,切片是数组衍生出来的概念,两者的区别是:数组的长度是固定的,在声明一个数组时,你必须指定该数组的长度(即该数组里面有多少个元素),以及该数组里元素的数据类型。 -