G

[Golang基础语法] 基本数据类型

RoLingG Golang 2024-03-15

基本数据类型

整数型

整数类型:

        ①`uint8`

​        ②`uint16`

​        ③`uint32`

​        ④`uint64`

​        ⑤`uint`

​        ⑥`int8`

​        ⑦`int16`

​        ⑧`int32`

​        ⑨`int64`

​        ⑩`int`
  1. 默认的数字类型是int类型。
  2. 带u的是无符号数字类型,只能存正整数。
  3. 后面的数字都是2进制的位数。例如uint8就是八位二进制位,最小是0,最大就是八个1再-1(即255)。但是int8,因为是有符号数字类型,所以八位里有一位要拿来做符号位,实际只有七位可用,最小为负的七位1(即-128),最大为127)
  4. uint8也叫byte(1B等于8bit)。byte=uint8
  5. int类型大小决定于所使用的平台。

浮点型

  1. 浮点型(float)只有float32float64。 32位只提供大约6个十进制数(也就是表示小数点后6位,最大范围即约为3.4e38)的精度,64位同理,大约提供15个十进制数(最大范围即约为1.8e308)。
  2. 浮点型基本默认为float64

字符型

  1. 单字节字符:即ascii里的字符,用''来进行声明,用的是byte,例如a byte = 'a'。范围也就是0~255(因为byte=uint8
  2. 多字节字符:例如表示中、日、韩文。也是用''来进行声明,用的是rune(即int32),例如a rune = '我'

字符串类型

  1. 字符串:即string
  2. 转义字符:

    例如:

    fmt.Println("你好\t你好")    //横向分隔两个你好
    fmt.Println("'你好'你好")    //单引号能正常输出
    fmt.Println("\"你好\"你好")    //输出双引号
    fmt.Println("\\你好\\你好")    //输出反斜杠
    fmt.Println("你好\n你好")    //回车换行分隔
    fmt.Println("你好\r你好")    //回到行首

布尔类型

  1. 布尔类型(bool)只有true(真)和false(假)两个值。
  2. 布尔类型默认为false。
  3. Go语言中不允许将整型强制转换成布尔型。
  4. 布尔型无法参与数值运算,也无法和其他类型之间进行转换。

类型转换

  1. 与 C 语言不同的是,Go 语言在不同类型的项之间赋值时需要显式转换。

    //例如:
        var i int = 42
        var f float64 = float64(i)
    //或
        i := 42
        f := float64(i)
  2. 在声明一个变量而不指定其类型时(即使用不带类型的 := 语法或 var = 表达式语法),变量的类型由右值推导得出。

    //例如:    
        var i int
        j := i    //j这样也会是int型
PREV
[Golang]Gorm框架 枚举
NEXT
[Golang基础语法] 声明与赋值

评论(0)

发布评论