go语言——数据类型

go语言——数据类型

目录

变量

注意事项

  • 变量必须先声明
  • go语言是静态语言,要求变量声明类型和赋值类型必须一致
  • 变量名在同一作用域不能冲突
  • 简短定义方式不能定义全局变量
  • 变量定义之后,必须使用,否则无法通过编译
  • 简短定义左边变量必须有新的

声明变量

第一种,指明变量类型

var name type
name = value

//写在一行
var name int = 30

第二种,自行判断变量类型

var name = value

第三种,简短声明

name := 20

第四种,集合类型

//只声明
var (
	name1 type1
	name2 type2
)

//同时赋值
var (
	name1 = 30
	name2 = "dsafgsa"
)

常量

注意事项

  • 常量声明之后不适用,可以编译
  • 常量如果不初始化,类型和值与上一行一致
  • 类型只能为正数、小数、字符串

常量声明

常量是一个在程序运行时,不会被修改的量

const HELLO string = "hello world"
const PI = 3.14
const (
	a = 1
	b = 2
	c = 3
)

iota

iota是一个特殊的常量,可以认为是一个可以被编译器修改的常量

每当定义一个const,iota的初始值为0,每当定义一个常量,iota的值自动加一,直到下一个const出现,清零

iota可以用作枚举

package main

import "fmt"

func main() {
	const (
		a = iota //iota = 0
		b   //1
		c   //2
		d = "hah" // iota = 3
		e   //hah  iota=4
		f = 100 //iota=5
		g   //100  iota=100
	)

	fmt.Println(a,b,c,d,e,f,g)
}

输出值

0 1 2 hah hah 100 100

数据类型

整形

int
int8
int16
int32
int64
uint8
uint16
uint32
uint64
byte //uint8
rune //int32
int //根据系统位数确认是int32,int64

浮点型

float32
float64
//%f默认为小数点后6位

字符串

概念:多个byte的集合

单引号和双引号的区别

  • ‘‘默认类型为int32,用于单个字符

  • ""类型为string,用于字符串

相关推荐