golang数据类型

常量

  常量声明的时候,必须初始化

  常量不能修改

  常量只能修饰bool,int,float,string类型

  const (

    a = iota

    b

    c

  )

  这里a=1,b和c在a的基础分别加1

整数类型

   Golang各整数类型分:有符号和无符号,int uint 的大小和系统有关。 

  Golang查看一个变量的数据类型:

package main

import "fmt"
func main() {
    var n1 = 100
    fmt.Printf("n1的类型 %T", n1)
}

浮点类型

浮点数 = 符号位 + 指数位 + 尾数位

尾数部分可能丢失,造成精度损失

func main() {
    var num3 float32 = -123.0000901
    var num4 float64 = -123.0000901
    fmt.Println("num3=", num3, "num4=", num4)
}

float64比float32精度高

字符类型

golang中没有专门的字符类型,如果要存储单个字符(字母),一般使用byte来保存。

字符串就是一串固定长度的字符连接起来的字符序列。Go的字符串是由单个字节连接起来的。也就是说对于传统的字符由字符组成的,而Go的字符串不同,它是由字节组成的。

字符型存储到计算机中,需要将字符对应的码值(整数)找出来

存储:字符——>对应码值——>二进制——>存储

读取:二进制——>码值——>字符——>读取

Go语言的编码都统一成了uft-8,非常方便,很统一。

布尔类型

bool类型占1字节。

string类型

字符串就是一串固定长度的字符连接起来的字符序列。Go的字符串是由单个字节连接起来的。Go语言字符串的字节使用UTF-8编码标识Unicode文本

字符串一旦赋值了,字符串就不能修改了,在Go语言中字符串是不可变的

字符串的两种表示形式:

  1.双引号,会识别转义字符

  2.反引号,以字符串的原生形式输出,包括换行和特殊字符,可以实现防止攻击、输出源代码等效果

人生就是要不断折腾
原文地址:https://www.cnblogs.com/xiangxiaolin/p/11689470.html