查看: 13|回复: 0

Go - 变量声明

[复制链接]

4

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2010-1-14
发表于 2019-6-28 09:58:00 | 显示全部楼层 |阅读模式

目录
  • 概述
  • 数据类型
      • 字符串
      • 布尔
      • 数字
  • 常量声明
  • 变量声明
  • 输出方法
  • 推荐阅读

概述

在声明变量之前,咱们先了解下变量的数据类型,这篇文章主要涉及 字符串、布尔、数字,其他类型后面开篇再说。

数据类型

字符串

string

只能用一对双引号("")或反引号(``)括起来定义,不能用单引号('')定义!

布尔

bool

只有 true 和 false,默认为 false。

数字

整型

int8 uint8

int16 uint16

int32 uint32

int64 uint64

int uint,具体长度取决于 CPU 位数。

浮点型

float32 float64

常量声明

常量,在程序编译阶段就确定下来的值,而程序在运行时无法改变该值。

单个常量声明

第一种:const 变量名称 数据类型 = 变量值

如果不赋值,使用的是该数据类型的默认值。

第二种:const 变量名称 = 变量值

根据变量值,自行判断数据类型。

多个常量声明

第一种:const 变量名称,变量名称 ... ,数据类型 = 变量值,变量值 ...

第二种:const 变量名称,变量名称 ... = 变量值,变量值 ...

测试代码

//demo_1.go
package main

import (
	"fmt"
)

func main() {
	const name string = "Tom"
	fmt.Println(name)

	const age = 30
	fmt.Println(age)

	const name_1, name_2 string = "Tom", "Jay"
	fmt.Println(name_1, name_2)

	const name_3, age_1 = "Tom", 30
	fmt.Println(name_3, age_1)
}

运行结果:

变量声明

单个变量声明

第一种:var 变量名称 数据类型 = 变量值

如果不赋值,使用的是该数据类型的默认值。

第二种:var 变量名称 = 变量值

根据变量值,自行判断数据类型。

第三种:变量名称 := 变量值

省略了 var 和数据类型,变量名称一定要是未声明过的。

多个变量声明

第一种:var 变量名称,变量名称 ... ,数据类型 = 变量值,变量值 ...

第二种:var 变量名称,变量名称 ... = 变量值,变量值 ...

第三种:变量名称,变量名称 ... := 变量值,变量值 ...

测试代码

//demo_2.go
package main

import (
	"fmt"
)

func main() {
	var age_1 uint8 = 31
	var age_2 = 32
	age_3 := 33
	fmt.Println(age_1, age_2, age_3)

	var age_4, age_5, age_6 int = 31, 32, 33
	fmt.Println(age_4, age_5, age_6)

	var name_1, age_7 = "Tom", 30
	fmt.Println(name_1, age_7)

	name_2, is_boy, height := "Jay", true, 180.66
	fmt.Println(name_2, is_boy, height)
}

运行结果:

输出方法

fmt.Print:输出到控制台(仅只是输出)

fmt.Println:输出到控制台并换行

fmt.Printf:仅输出格式化的字符串和字符串变量(整型和整型变量不可以)

fmt.Sprintf:格式化并返回一个字符串,不输出。

测试代码

//demo_3.go
package main

import (
	"fmt"
)

func main() {
	fmt.Print("输出到控制台不换行")
	fmt.Println("---")
	fmt.Println("输出到控制台并换行")
	fmt.Printf("name=%s,age=%d\n", "Tom", 30)
	fmt.Printf("name=%s,age=%d,height=%v\n", "Tom", 30, fmt.Sprintf("%.2f", 180.567))
}

运行结果:

推荐阅读

  • Go - 循环
  • Go - Map 集合
  • Go - Struct 结构体
  • Go - Slice 切片
  • Go - 数组
  • Go - 变量声明
  • Go - 环境安装

本文欢迎转发,转发请注明作者和出处,谢谢!

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部