- Go 教程
- Go - 首页
- Go - 概述
- Go - 环境设置
- Go - 程序结构
- Go - 基本语法
- Go - 数据类型
- Go - 变量
- Go - 常量
- Go - 运算符
- Go - 决策
- Go - 循环
- Go - 函数
- Go - 作用域规则
- Go - 字符串
- Go - 数组
- Go - 指针
- Go - 结构体
- Go - 切片
- Go - 范围
- Go - 映射
- Go - 递归
- Go - 类型转换
- Go - 接口
- Go - 错误处理
- Go 常用资源
- Go - 常见问题解答
- Go - 快速指南
- Go - 常用资源
- Go - 讨论
Go - 常量
常量是指程序在其执行期间可能不会更改的固定值。这些固定值也称为字面量。
常量可以是任何基本数据类型,例如整数常量、浮点常量、字符常量或字符串字面量。还存在枚举常量。
常量与普通变量一样,只是它们的定义后其值无法修改。
整数字面量
整数字面量可以是十进制、八进制或十六进制常量。前缀指定基数或基:十六进制为 0x 或 0X,八进制为 0,十进制为无。
整数字面量还可以带后缀,该后缀是 U 和 L 的组合,分别表示无符号和长整型。后缀可以是大写或小写,并且可以按任意顺序排列。
以下是一些整数字面量的示例:
212 /* Legal */ 215u /* Legal */ 0xFeeL /* Legal */ 078 /* Illegal: 8 is not an octal digit */ 032UU /* Illegal: cannot repeat a suffix */
以下是各种类型整数字面量的其他示例:
85 /* decimal */ 0213 /* octal */ 0x4b /* hexadecimal */ 30 /* int */ 30u /* unsigned int */ 30l /* long */ 30ul /* unsigned long */
浮点字面量
浮点字面量具有整数部分、小数点、小数部分和指数部分。您可以使用十进制形式或指数形式表示浮点字面量。
使用十进制形式表示时,必须包含小数点、指数或两者;使用指数形式表示时,必须包含整数部分、小数部分或两者。带符号的指数由 e 或 E 引入。
以下是一些浮点字面量的示例:
3.14159 /* Legal */ 314159E-5L /* Legal */ 510E /* Illegal: incomplete exponent */ 210f /* Illegal: no decimal or exponent */ .e55 /* Illegal: missing integer or fraction */
转义序列
当某些字符前面带有反斜杠时,它们在 Go 中将具有特殊含义。这些称为转义序列代码,用于表示换行符 (\n)、制表符 (\t)、退格符等。这里列出了一些这样的转义序列代码:
转义序列 | 含义 |
---|---|
\\ | \ 字符 |
\' | ' 字符 |
\" | " 字符 |
\? | ? 字符 |
\a | 警告或铃声 |
\b | 退格 |
\f | 换页 |
\n | 换行 |
\r | 回车 |
\t | 水平制表符 |
\v | 垂直制表符 |
\ooo | 一位到三位八进制数 |
\xhh . . . | 一位或多位十六进制数 |
以下示例演示如何在程序中使用\t:
package main import "fmt" func main() { fmt.Printf("Hello\tWorld!") }
编译并执行上述代码后,将产生以下结果:
Hello World!
Go 中的字符串字面量
字符串字面量或常量用双引号 "" 括起来。字符串包含与字符字面量类似的字符:普通字符、转义序列和通用字符。
您可以使用字符串字面量将长行分解为多行,并使用空格分隔它们。
以下是一些字符串字面量的示例。所有三种形式都是相同的字符串。
"hello, dear" "hello, \ dear" "hello, " "d" "ear"
const关键字
您可以使用const前缀声明具有特定类型的常量,如下所示:
const variable type = value;
以下示例演示如何使用const关键字:
package main import "fmt" func main() { const LENGTH int = 10 const WIDTH int = 5 var area int area = LENGTH * WIDTH fmt.Printf("value of area : %d", area) }
编译并执行上述代码后,将产生以下结果:
value of area : 50
请注意,良好的编程习惯是将常量定义为大写。
广告