Go基础学习记录 - Go指南 - 基本类型

{app.params.name}}{app.params.name}}{app.params.name}}

环境

go version go1.10.1 darwin/amd64

 

基本类型

Go的基本类型有

  • bool
  • string
  • int int8 int16 int32 int64
  • uint uint8 uint16 uint32 uint64 uintptr
  • byte // unit8的别名
  • rune // int32的别名 表示一个Unicode码点
  • float32 float64
  • complex64 complex128

 

同导入一样,变量声明也可以"分组"成一个语法块.

int、uint和uintptr在32位系统上通常为32为宽,在63位系统上则为64位宽。当你需要一个整数值时应使用int类型,除非你有特殊的理由使用固定大小或无符号的整数类型。

package main

import (
	"fmt"
	"math/cmplx"
)

var (
	Tobe   bool       = false
	MaxInt uint64     = 1<<64 - 1
	z      complex128 = cmplx.Sqrt(-5 + 12i)
)

func main() {
	const f = "%T(%v)\n"
	fmt.Printf(f, Tobe, Tobe)
	fmt.Printf(f, MaxInt, MaxInt)
	fmt.Printf(f, z, z)
}

运行结果类似如下

bool(false)
uint64(18446744073709551615)
complex128((2+3i))

零值

没有明确初始值的变量声明会被赋予他们"零值"

零值包括

  1. 数值类型为0
  2. 布尔类型为false
  3. 字符串为""(空字符串)
package main

import "fmt"

func main() {
	var i int
	var f float64
	var b bool
	var s string
	fmt.Printf("%v %v %v %q\n", i, f, b, s)
}

运行后输出如下

0 0 false ""

 

版权声明

durban创作并维护的 小绒毛的足迹博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。

本文首发于 博客( https://www.xiaorongmao.com ),版权所有,侵权必究。

本文永久链接: https://www.xiaorongmao.com/blog/9


版权声明

durban创作并维护的 小绒毛的足迹博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。

本文首发于 小绒毛的足迹博客( https://www.xiaorongmao.com ),版权所有,侵权必究。

本文永久链接: https://www.xiaorongmao.com/blog/9