手把手帶你走進(jìn)Go語言之常量解析
概述
Golang 是一個跨平臺的新生編程語言. 今天小白就帶大家一起攜手走進(jìn) Golang 的世界. 
常量
常量 (Constant) 是指程序在執(zhí)行過程中不會改變的固定值. 常量可以是任何基本數(shù)據(jù)類型. 如整數(shù)常量, 浮點常量, 字符常量, 枚舉常量. 常量一般都會被編譯器視為常規(guī)變量, 只是常量的值不能再定義之后修改.

格式 1:
const 變量名 = 值
格式 2:
const 變量名 變量類型
例子:
package main
import "fmt"
func main() {
// 方法一
const num1 = 1
// 方法二
const num2 int = 2
// 調(diào)試輸出
fmt.Println(num1, num2)
}
輸出結(jié)果:
1 2
例 2:
package main
import "fmt"
func main() {
// 字符串常量
const str1 = "我是小白呀"
// 整數(shù)常量
const int1 = 1
// 浮點常量
const float1 = 1.2
// 布爾類型常量
const boolean1 = true
// 調(diào)試輸出
fmt.Println(str1)
fmt.Println(int1)
fmt.Println(float1)
fmt.Println(boolean1)
}
輸出結(jié)果:
我是小白呀
1
1.2
true
常量計算
常量可以使用len(), cap(), unsafe.Sizeof()函數(shù)計算表達(dá)式的值. 常量表達(dá)式中函數(shù)必須是內(nèi)置函數(shù), 否則編譯不過.
例子:
package main
import "fmt"
import "unsafe"
// 定義常量
const (
str = "iamlittlewhite"
num = 1
)
func main() {
// 計算字符串長度
fmt.Println(len(str))
// 計算整數(shù)占用字節(jié)
fmt.Println(unsafe.Sizeof(num))
}
輸出結(jié)果:
14
8
iota
iota 是 Go 語言的常量計數(shù)器, 只能在常量的表達(dá)式中使用. iota 在 const 關(guān)鍵字出現(xiàn)時將被重置為 0, const 中每新增一行常量, iota 就會計數(shù)一次. iota 可以幫助我們統(tǒng)計常量同一行代碼被訪問了多少次.

例子:
package main
import "fmt"
func main() {
// 定義iota
const (
a = iota
b = iota
c = iota
d = iota
)
// 調(diào)試輸出
fmt.Println(a, b, c, d)
fmt.Println(a, d)
}
輸出結(jié)果:
0 1 2 3
0 3
到此這篇關(guān)于手把手帶你走進(jìn)Go語言之常量解析的文章就介紹到這了,更多相關(guān)Golang 常量內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang環(huán)境變量設(shè)置和查看工具go env詳解
go env 是 Go 工具鏈中的一個命令,用于設(shè)置和查看當(dāng)前 Golang 環(huán)境的相關(guān)信息,對于理解、編譯和運行 Golang 程序非常有用,本文就給大家簡單的介紹一下Golang環(huán)境變量設(shè)置和查看工具go env,需要的朋友可以參考下2023-07-07
服務(wù)器端Go程序?qū)﹂L短鏈接的處理及運行參數(shù)的保存
這篇文章主要介紹了服務(wù)器端Go程序?qū)﹂L短鏈接的處理及運行參數(shù)的保存,這里針對使用Go語言編寫的Socket服務(wù)器進(jìn)行實例說明,需要的朋友可以參考下2016-03-03
如何控制Go編碼JSON數(shù)據(jù)時的行為(問題及解決方案)
今天來聊一下我在Go中對數(shù)據(jù)進(jìn)行 JSON 編碼時遇到次數(shù)最多的三個問題以及解決方法,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友參考下吧2020-02-02

