1 3 Go快速入墳系列之字串

2022-06-08 10:21:11 字數 1404 閱讀 8554

字串是開發中使用常見最多的型別,本章主要講一些相關的騷操作

這裡太過基礎,可忽略這部分內容

字串這玩意,我們永遠都不陌生。初入程式設計殿堂,必逃不過"hello world"的洗禮。放在""雙引號中的一串字元就是字串。

在go中,字串的宣告方式有如下是那種

str := "hi jochen" // 1

var str = "hi jochen" // 2

var str string = "hi jochen" //3

在go中當宣告了乙個字串,但沒有賦值的時候,該字串的預設值是乙個空字串"",在某些語言中如c#,字串的預設值是null

可以給某個變數,賦予不同的string值,但是string本身是不可變的,這在很多語言都是如此。

所謂字面值就是平時我們定義變數等號右邊能直**到的值得,如"hi jochen"

字面值可以包含轉義符號,如常見的\n \t等帶反斜槓的字元\

有時候我們想得到"\n"這個字串,而不是換行符(\n轉義字元的含義),此時我們可以使用反單引號(不知道是不是這樣叫,就是esc下面那個鍵) ` 代替 雙引號",此時該字串字面值就叫做原始字串字面值,如:

var str = `hi jochen\n`  // 此時字串就是hi jochen\n

var str = "hi jochen\n" // 此時字串是hi jochen 列印或顯示的時候會換行

原始字串在我們編寫檔案路徑字串的時候是十分有用的

常見的字元編碼有ascii、unicode、utf-8等,字元編碼就如字面含義,就是為每個字元分配乙個特定的數值與之對應。

unicode

utf-8

ps:當我們列印rune型別的時候,如果使用格式化%v輸出會是code point,如果想輸出字元我們應該使用%c(任何整數型別實際上都可以使用%c列印字元,但是使用rune可以明顯的表達你的意圖)

向上述 runes<=>int32 byte<=>uint8 這樣可以互換使用的型別,我們就稱它們互為型別別名

我們也可以自定義型別別名

語法為:type byte = uint8

拓展:

獲取字元長度:

1 0 Go快速入墳系列之變數 常量與算術運算子

這部分直接水過。go和大部分語言一樣,提供了 取餘 等常見常用的運算子。控制台輸出運算結果 此處需要一提的是go的列印控制台使用的是fmt包下的print和println二者的區別在於後者是換行列印。為啥要突然提列印?因為我要用。下面就是使用go算術運算子計算後列印到控制台的示例 雖然很簡單,但是還...

redis字串系列之四

目錄 incr incrby incrbyfloat decr decrby 1.語法 incr key 2.解析 為鍵key儲存的數字值上加一。如果鍵不存在,那麼它的值會被初始化為0,然後執行incr命令 如果鍵值不能解釋為數字 那麼incr會返回乙個錯誤 本操作的值限制在64位有符號數字之內 3...

Redis快速入門之字串型別

字串型別是redis中最基本的資料型別,他能儲存任何形式的字串,包括二進位制資料,你可以用它來儲存使用者的郵箱,json化的字串,設定是二進位制物件。乙個字串型別允許儲存的大小為512mset keyvalue getkey incr key當操作的鍵值不存在是預設的值為0,因此遞增之後的值為1 當...