位置:首頁 > 高級語言 > 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 . . . 一個或多個數字的十六進製數

以下為例子來說明一些轉義字符序列:

package main

import "fmt"

func main() {
   fmt.Printf("Hello\tWorld!")
}

當上述代碼被編譯和執行時,它產生了以下結果:

Hello   World!

字符串文字

字符串文字或常量用雙引號“”。一個字符串包含類似於字符文字字符:普通字符,轉義序列和通用字符。

您可以使用字符串和分隔使用空格打破一個長行成多行。

下麵是字符串的一些例子。所有的三種形式是相同的字符串。

"hello, dear"

"hello, \

dear"

"hello, " "d" "ear"

const 關鍵字

您可以使用 const 前綴來聲明常量使用特定的類型如下:

const variable type = value;

下麵的例子說明了它的細節:

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

請注意,這是一個良好的編程習慣大寫定義常量。