手把手帶你走進(jìn)Go語(yǔ)言之常量解析
概述
Golang 是一個(gè)跨平臺(tái)的新生編程語(yǔ)言. 今天小白就帶大家一起攜手走進(jìn) Golang 的世界. 
常量
常量 (Constant) 是指程序在執(zhí)行過(guò)程中不會(huì)改變的固定值. 常量可以是任何基本數(shù)據(jù)類型. 如整數(shù)常量, 浮點(diǎn)常量, 字符常量, 枚舉常量. 常量一般都會(huì)被編譯器視為常規(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
// 浮點(diǎn)常量
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
常量計(jì)算
常量可以使用len(), cap(), unsafe.Sizeof()函數(shù)計(jì)算表達(dá)式的值. 常量表達(dá)式中函數(shù)必須是內(nèi)置函數(shù), 否則編譯不過(guò).
例子:
package main
import "fmt"
import "unsafe"
// 定義常量
const (
str = "iamlittlewhite"
num = 1
)
func main() {
// 計(jì)算字符串長(zhǎng)度
fmt.Println(len(str))
// 計(jì)算整數(shù)占用字節(jié)
fmt.Println(unsafe.Sizeof(num))
}
輸出結(jié)果:
14
8
iota
iota 是 Go 語(yǔ)言的常量計(jì)數(shù)器, 只能在常量的表達(dá)式中使用. iota 在 const 關(guān)鍵字出現(xiàn)時(shí)將被重置為 0, const 中每新增一行常量, iota 就會(huì)計(jì)數(shù)一次. iota 可以幫助我們統(tǒng)計(jì)常量同一行代碼被訪問(wèn)了多少次.

例子:
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語(yǔ)言之常量解析的文章就介紹到這了,更多相關(guān)Golang 常量?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang環(huán)境變量設(shè)置和查看工具go env詳解
go env 是 Go 工具鏈中的一個(gè)命令,用于設(shè)置和查看當(dāng)前 Golang 環(huán)境的相關(guān)信息,對(duì)于理解、編譯和運(yùn)行 Golang 程序非常有用,本文就給大家簡(jiǎn)單的介紹一下Golang環(huán)境變量設(shè)置和查看工具go env,需要的朋友可以參考下2023-07-07
Go語(yǔ)言實(shí)現(xiàn)請(qǐng)求超時(shí)處理的方法總結(jié)
這篇文章主要為大家詳細(xì)介紹了Go語(yǔ)言中實(shí)現(xiàn)請(qǐng)求的超時(shí)控制的方法,主要是通過(guò)timer和timerCtx來(lái)實(shí)現(xiàn)請(qǐng)求的超時(shí)控制,希望對(duì)大家有所幫助2023-05-05
Go語(yǔ)言超時(shí)退出的三種實(shí)現(xiàn)方式總結(jié)
這篇文章主要為大家詳細(xì)介紹了Go語(yǔ)言中超時(shí)退出的三種實(shí)現(xiàn)方式,文中的示例代碼簡(jiǎn)潔易懂,對(duì)我們深入了解Go語(yǔ)言有一定的幫助,需要的可以了解一下2023-06-06
服務(wù)器端Go程序?qū)﹂L(zhǎng)短鏈接的處理及運(yùn)行參數(shù)的保存
這篇文章主要介紹了服務(wù)器端Go程序?qū)﹂L(zhǎng)短鏈接的處理及運(yùn)行參數(shù)的保存,這里針對(duì)使用Go語(yǔ)言編寫(xiě)的Socket服務(wù)器進(jìn)行實(shí)例說(shuō)明,需要的朋友可以參考下2016-03-03
Golang處理parquet文件實(shí)戰(zhàn)指南
這篇文章主要給大家介紹了關(guān)于Golang處理parquet文件的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Golang具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-03-03
一文詳解Golang中字符串的常見(jiàn)錯(cuò)誤
這篇文章主要來(lái)和大家深入討論一下Golang?中的字符串,并查看一些不同的場(chǎng)景,以避免常見(jiàn)錯(cuò)誤,對(duì)大家掌握golang有一定的幫助,需要的可以了解下2023-10-10
golang定時(shí)任務(wù)cron項(xiàng)目實(shí)操指南
Go實(shí)現(xiàn)的cron 表達(dá)式的基本語(yǔ)法跟linux 中的 crontab基本是類似的,下面這篇文章主要給大家介紹了關(guān)于golang定時(shí)任務(wù)cron項(xiàng)目實(shí)操的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12
如何控制Go編碼JSON數(shù)據(jù)時(shí)的行為(問(wèn)題及解決方案)
今天來(lái)聊一下我在Go中對(duì)數(shù)據(jù)進(jìn)行 JSON 編碼時(shí)遇到次數(shù)最多的三個(gè)問(wèn)題以及解決方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-02-02

