1. 程式人生 > 實用技巧 >Golang 字元和字串的區別

Golang 字元和字串的區別

關於字元與字串的區別:

字元:

  • 單引號
  • 往往只包含一個字元, 轉義字元除外: \n

字串:

  • 雙引號
  • 字串有一個或者多個字元組成
  • 字串都是隱藏了一個結束符: \0

下面通過程式碼來看一下兩者的區別:

package main

import "fmt"

func main() {
	var a byte = 'a'
	var b string = "a"  // 'a' and '\0' 兩個字元組成
	fmt.Println(a)  // 97
	fmt.Println(b)  // a
    
	// \n 換行, \\表示一個\, 一般用於檔案操作
	fmt.Printf("%c\n", a)  // a
	var c string = "helloworld"
	fmt.Printf("%s", c)
	// fmt.Println(a == b)  // 不同型別不能比較
}

計算字串的個數:

package main

import "fmt"

func main() {
	var s1 string = "hello world"
	// 計算字串個數
	num := len(s1)
	fmt.Println(num)  // 11

	fmt.Printf("s1[0] = %c, s1[1] = %c\n", s1[0], s1[1])  // s1[0] = h, s1[1] = e

	// 在go語言中, 採用的是utf-8編碼, 一箇中文對應3個字元, 為了和linux統一處理
	var s2 string = "李培冠"
	num = len(s2)
	fmt.Println(num)  // 9

	var s3 string = "李培冠it"
	num = len(s3)
	fmt.Println(num)  // 11
}

李培冠部落格

lpgit.com