数值类型,对编程来说,数值不可或缺。然而,如果您没有计算机科学或数学方面的知识,可能对有些术语感到迷惑。您可能听说过浮点数、整数、无符号整数、8位、64位、bigint、smallint、tinyint,这些都是整型(数值)类型。要明白这些术语的含义,必须知道数字在计算机内部是以二进制位的方式存储的。二进制位就是一系列布尔值,取值要么为1,要么为0。1位可表示1或0,对于4位整数,下表对其二进制表示和十进制表示做了比较。从该表可知,4位可表示16个不同的数字。
带符号整数和无符号整数
对于带符号整数,需要使用一位来表示符号,这通常是符号-。上表列出了无符号的4位整数,其取值范围为0~15。带符号整数可正可负,因此4位带符号整数的取值范围为-8到7,如表所示。
提示:可使用的最大数值取决于计算机处理器。 在计算机中,可使用的最大数值取决于计算机处理器的体系结构。当今的计算机大多是64位的,支持的最大无符号整数为9223372036854775807。第一代微处理器有些只有4位,这意味着只能表示-8~7的带符号整数!
在Go语言中,声明整型变量的方式如下。
var i int = 3
类型int表示带符号整数,因此可正可负。根据计算机的底层体系结构,int可能是32位的带符号整数,也可能是64位的带符号整数。除非要处理的数字非常大,或者非常在乎性能,否则只需使用int,而无须关心编译器是如何做的。
浮点数
浮点数是带小数点的数字,如11.2、0.1111、43.22。整数不能包含小数部分,因此要处理分数,必须使用浮点数。根据实际数字的大小,Go语言中的浮点数可以是32位的,也可以是64位的。在大多数现代计算机中,推荐使用float64。
var f float32 = 0.111
字符串
字符串可以是任何字符序列,其中的字符可能是数字、字母和符号。下面是一些简单的字符串。
- cow
- `$^%$`
- a1234
几乎所有的编程语言都支持字符串,它们通常包含数字、字母或符号。在Go语言中,声明并初始化字符串变量很简单。
var s string = "www.coolcou.com"
字符串变量可以为空,这种变量非常适合用来累积其他变量中的数据以及存储临时数据。
var s string = ""
创建字符串变量后,可将其与其他数据相加,但不能修改原来的值。下面的代码创建一个空字符串,再将字符串foo附加到末尾,这在Go语言中是合法的。
var s string = ""
s += "www.coolcou.com"
不能对字符串执行数学运算,即便它看起来像个数字。要想对看起来像数字的字符串执行数学运算,必须先将其转换为数字类型。
数组
数组是几乎所有编程语言都支持的另一种数据类型,这是一种比较复杂的类型,因为它包含一系列元素。例如,要表示乐队的成员,使用字符串数组是不错的选择。声明数组时,必须指定其长度和类型。
var beatles [4]string
在这个示例中,方括号内的数字表示数组的长度,而紧跟在方括号后的是数组的类型——这里为字符串。
beatles[0] = "John"
beatles[1] = "Paul"
beatles[2] = "Ringo"
beatles[3] = "George"
注意:数组索引从0开始。
您可能注意到了,在上述变量声明中,指定的数组长度为4,但访问这个数组的元素时,索引最大为3。这是因为在所有数组中,索引都从0开始。刚接触时,您可能对这一点感到迷惑。
**酷客教程相关文章:**