Go学习笔记-变量与常量
程序员文章站
2024-03-23 10:48:16
...
Go学习笔记-变量与常量
概述
变量 来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念,由字母、数字、下划线组成,其中首个字符不能为数字,可以通过变量名访问,一般格式是使用
var
关键字常量 是一个简单值的标识符,在程序运行时,不会被修改的量, 其数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型。一般的格式是使用
const
变量声明
单个变量声明
第一种:指定变量类型,如果没有初始化,则变量默认为零值,其格式如下
// var 变量名称 数据类型 = 变量值
// 如果不赋值,使用的是该数据类型的默认值
package main
import "fmt"
func main() {
// 声明一个变量并初始化,结果为30
var a int = 30
fmt.Println(a)
// 没有初始化就为零值
var a1 int
fmt.Println(a1)
// bool 零值为 false
var a2 bool
fmt.Println(a2)
}
第二种:根据值自行判定变量类型,其格式如下
// var 变量名称 = 变量值
// 根据变量值,自行判断数据类型。
package main
import "fmt"
func main() {
var a = 30
fmt.Println(a)
}
第三种:省略 var, 注意 := 左侧如果没有声明新的变量,就产生编译错误,其格式如下
// 变量名称 := 变量值
// 省略了 var 和数据类型,变量名称一定要是未声明过的。
package main
import "fmt"
func main() {
a := 30
fmt.Println(a)
var b int
b := 1 // 会产生编译错误
b,b1 := 1,2 // 此时不会产生编译错误,因为有声明新的变量,因为 := 是一个声明语句
}
多变量声明
与单变量类似,其也有三种
// 第一种:var 变量名称,变量名称 ... ,数据类型 = 变量值,变量值 ...
// 第二种:var 变量名称,变量名称 ... = 变量值,变量值 ...
// 第三种:变量名称,变量名称 ... := 变量值,变量值 ...
package main
import "fmt"
func main() {
var a1, a2, a3 int = 1, 2, 3
fmt.Println(a1, a2, a3)
var name, age = "小花", 12
fmt.Println(name, age)
a, b, c := 5, 7, "abc"
fmt.Println(a, b, c)
}
常量声明
- 显式类型定义:
const b string = "abc"
- 隐式类型定义:
const b = "abc"
- 多个变量声明可以简写为:
const a, b (数据类型)= a_value, b_value
package main
import "fmt"
func main() {
const name string = "jack"
fmt.Println(name)
const age = 30
fmt.Println(age)
const name1, name2 string = "jack", "jenny"
fmt.Println(name1, name2)
const name3, age1 = "Tom", 30
fmt.Println(name3, age1)
}
上一篇: go换行(行太长)
下一篇: go语言刷题:88.合并两个有序数组
推荐阅读
-
Go学习笔记-变量与常量
-
GO语言入门学习,定义变量和变量自动推导类型(一)
-
Python学习笔记(十)——输入与输出
-
Java学习笔记——输入与输出支持
-
B站400万播放量的Java教程都讲了什么-学习笔记03-变量赋值和作用域
-
Struts2学习笔记之参数的传递与获取(四) 博客分类: struts2 strutsel
-
caffe 学习笔记-模型训练与测试
-
Tomcat学习笔记 -【 虚拟主机与虚拟目录】 博客分类: Nginx/Tomcat/Jetty tomcat虚拟主机虚拟目录
-
Tomcat学习笔记 - 【性能优化与监控】 博客分类: Nginx/Tomcat/Jetty tomcat性能优化线程池监控
-
OpenCV学习笔记(11):libfacedetection人脸检测的配置与使用