GO語言101問(7)

1.關於字符串的連接,下面語法正確的是?

A str := 'abc' + '123'

B str := "abc" + "123"

C str := '123' + "abc"

D fmt.Sprintf("abc%d", 123)

答案是:BD,除了上面的連接方式還有strings.Join()、buffer.WriteString()等。

2.下面這段代碼能否編譯通過?如果可以,輸出什麼?

package main

import "fmt"

const (
	x = iota
	_
	y
	z = "ZZ"
	k
	p = iota
)

func main() {
	fmt.Println(x, y, z, k, p)
}

輸出爲:

$ go run main.go
0 2 ZZ ZZ 5

知識點:iota默認值是0,然後以此增加。

3.下面賦值正確的是?

A var x = nil

B var x interface{} = nil

C var x string = nil

D var x error = nil

答案是:BD,nil只能賦值給指針、chan、func、interface、map或者slice類型的變量。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章