面試題筆試題學習日記——golang(8.01)

聲明一個整型變量i var i int數組

聲明一個含有10個元素的整型數組a var a [10]intapp

聲明一個整型數組切片a var s []int函數

聲明一個整型指針變量p var p *int測試

聲明一個key爲字符串型value爲整型的map變量m var m map[string]intspa

聲明一個入參和返回值均爲整數的函數變量f var f func(a int) int指針

聲明一個用於讀取int數據的單向channel變量ch var ch <-chan intcode

假設源文件命名爲slice.go,則測試文件命名爲 slice_test.gothree

go test要求測試函數的前綴必須命名爲 Test字符串

下面的程序的運行結果是string

for i := 0;i < 5; i++ {
	defer fmt.Print("%d", i)
}

43210

下面的程序的運行結果是

func main() {
	x := 1
	{
		x := 2
		fmt.Print(x)
	}
	fmt.Println(x)
}

21

下面的程序的運行結果是

func main() {
	strs := []string{"one","two","three"}
	for _, s := range strs {
		go func() {
			time.Sleep(1 * time.Second)
			fmt.Printf("%s", s)
		}()
	}
	time.Sleep(3 * time.Second)
}

three three three

下面的程序的運行結果是

func main() {
	x := []string{"a","b","c"}
	for _, v := range x {
		fmt.Print(v)
	}
}

abc

下面的程序的運行結果是

func main() {
	i := 1
	j := 2
	i, j = j, i
	fmt.Printf("%d, %d\n", i, j)
}

21

下面的程序的運行結果是

func incr(p *int) {
	*p++
	return *p
}
func main() {
	v := 1
	incf(*v)
	fmt.Println(v)
}

2

啓動一個goroutine的關鍵字是 go

下面的程序的運行結果是

type Slice []int

func NewSlice() Slice {
	return make(Slice, 0)
}

func (s *Slice) Add(elem int) *Slice {
	*s = append(*s, elem)
	fmt.Print(elem)
	return s
}

func main() {
	s := NewSlice()
	defer s.Add(1).Add(2)
	s.Add(3)
}

132

相關文章
相關標籤/搜索