溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Go語言中的基本數(shù)據(jù)類型介紹

發(fā)布時間:2021-09-08 14:37:47 來源:億速云 閱讀:143 作者:chen 欄目:編程語言

本篇內(nèi)容主要講解“Go語言中的基本數(shù)據(jù)類型介紹”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“Go語言中的基本數(shù)據(jù)類型介紹”吧!

Go 語言是一種靜態(tài)類型的編程語言,在 Go 編程語言中,數(shù)據(jù)類型用于聲明函數(shù)和變量。數(shù)據(jù)類型的出現(xiàn)是為了把數(shù)據(jù)分成所需內(nèi)存大小不同的數(shù)據(jù),編程的時候需要用大數(shù)據(jù)的時候才需要申請大內(nèi)存,就可以充分利用內(nèi)存。

布爾型

布爾類型的值只有兩種:true 或 false。在if 和 for 語句的條件部分都是布爾類型的值,并且 == 和 < 等比較操作也會產(chǎn)生布爾型的值。

一元操作符 ! 對應(yīng)邏輯非操作,因此 !true 的值為 false,更復(fù)雜一些的寫法是 (!true==false) == true,實際開發(fā)中我們應(yīng)盡量采用比較簡潔的布爾表達式,就像用 x 來表示 x==true。

var a = 10
fmt.Println(a == 10) // true
fmt.Println(a == 5)  // false
fmt.Println(a != 10) // false
fmt.Println(a != 5)  // true

Go 語言對于值之間的比較有非常嚴格的限制,只有兩個相同類型的值才可以進行比較,如果值的類型是接口(interface),那么它們也必須都實現(xiàn)了相同的接口。如果其中一個值是常量,那么另外一個值可以不是常量,但是類型必須和該常量類型相同。如果以上條件都不滿足,則必須將其中一個值的類型轉(zhuǎn)換為和另外一個值的類型相同之后才可以進行比較。

var a = 10
fmt.Println(a == true) // cannot use true (type untyped bool) as type int

布爾值可以和 &&(AND)和 ||(OR)操作符結(jié)合,并且有短路行為,如果運算符左邊的值已經(jīng)可以確定整個布爾表達式的值,那么運算符右邊的值將不再被求值,因此下面的表達式總是安全的:

s != "" && s[0] == 'x'

Go 語言中不允許將整型強制轉(zhuǎn)換為布爾型,代碼如下:

var n bool
fmt.Println(int(n) * 2)  // cannot convert n (type bool) to type int

數(shù)值型

Go 語言的數(shù)值類型分為以下幾種:整數(shù)、浮點數(shù)、復(fù)數(shù)。其中每一種都包含了不同大小的數(shù)值類型,例如有符號整數(shù)包含 int8、int16、int32、int64 等,每種數(shù)值類型都決定了對應(yīng)的大小范圍和是否支持正負符號。本小節(jié)我們主要介紹一下數(shù)值類型。

整型

Go 語言也是基于架構(gòu)的類型,同時提供了有符號和無符號的整數(shù)類型。

大多數(shù)情況下,我們只需要 int 一種整型即可,它可以用于循環(huán)計數(shù)器(for 循環(huán)中控制循環(huán)次數(shù)的變量)、數(shù)組和切片的索引,以及任何通用目的的整型運算符,通常 int 類型的處理速度也是最快的。

浮點型

Go 語言提供了兩種精度的浮點數(shù):float32 和 float64,這些浮點數(shù)類型的取值范圍可以從很微小到很巨大。

復(fù)數(shù)

復(fù)數(shù)是由兩個浮點數(shù)表示的,其中一個表示實部(real),一個表示虛部(imag)。

Go 語言中復(fù)數(shù)的類型有兩種,分別是 complex128(64 位實數(shù)和虛數(shù))和 complex64(32 位實數(shù)和虛數(shù)),其中 complex128 為復(fù)數(shù)的默認類型。

復(fù)數(shù)的值由三部分組成 RE + IMi,其中 RE 是實數(shù)部分,IM 是虛數(shù)部分,RE 和 IM 均為 float 類型,而最后的 i 是虛數(shù)單位。如:1+2i

字符串型

字符串是一種值類型,且值不可變,即創(chuàng)建某個文本后將無法再次修改這個文本的內(nèi)容,其實,字符串是字節(jié)的定長數(shù)組。

使用雙引號 "" 來定義字符串,字符串中可以使用轉(zhuǎn)義字符來實現(xiàn)換行、縮進等效果,常用的轉(zhuǎn)義字符包括:

  • \n:換行符

  • \r:回車符

  • \t:tab 鍵

  • \u 或 \U`:Unicode 字符

  • \\:反斜杠自身

Go 語言比其他語言更加的靈活,此外,可通過反引號 ` 可以定義多行字符串。(注意:是反引號 `(鍵盤上1鍵左邊鍵),而不是引號 ‘)

到此,相信大家對“Go語言中的基本數(shù)據(jù)類型介紹”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI