Go - 类型与变量

Posted TonyZhang24

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go - 类型与变量相关的知识,希望对你有一定的参考价值。

类型

Go 语言中的类型与其他语言类似,比较特殊的有以下几个:

bool 类型 - 它的值只能是 true 与 false。

int / uint - 它们的长度会根据操作系统的不同(32/64 bit)的不同而有所区别。

保存指针的的32/64整形 - uintptr

引用类型 - slice, map, chan

 

类型的默认值(零值)

值类型的默认值为 0

bool 型为 false

string 型为 空字符串

 

单个变量的声明与赋值

声明: var  <name> <type>

var nVal int32

 

赋值: <name> = <expression>

nVar = 100

 

声明+赋值: var <name> [type] = <expression>

var nVal int=100

var nVal = 100 //省略变量类型,有编译器自己推断

val := false //最简形式,同时省略 var 和 type

 

 

 

变量的类型转换

Go 语言不存在隐式转换,必须进行显式转换。此外,转换的时候还需要考虑类型兼容。

 

语法: valueA := typeofvalue(valueB)

 

 

// Demo2
package main

import (
    "fmt"
)

func main() {
    var valA float32 = 100.1

    valB := int(valA)
    fmt.Println(valB)

    var valC float32
    valC = float32(valA)
    fmt.Println(valC)
}

 

输出结果为:

100

100.1

 

以上是关于Go - 类型与变量的主要内容,如果未能解决你的问题,请参考以下文章

Go-动态类型与类型断言详解(含type-switch及全部代码)

GoLang学习之变量定义和初始化

Go - 类型与变量

Go 匿名函数与闭包的使用

go语言学习笔记 — 基础 — 基本语法 — 常量与变量 — 变量作用域:能够使用变量的代码范围

go语言学习笔记 — 基础 — 基本语法 — 常量与变量 — 变量的数值类型转换