• 评论了面试题 Go每日一题(13)
    不能通过编译。append() 的第二个参数不能直接使用 slice,需使用 … 操作符,将一个切片追加到另一个切片上:append(s1,s2…)。或者直接跟上元素,形如:append(s1,1,2...
  • 评论了面试题 Go每日一题(7)
    这个问题,相当于问:可以对 map 的元素直接取地址吗?无法对map了地址
  • 评论了面试题 Go每日一题(7)
    这个问题,相当于问:可以对 map 的元素直接取地址吗?
  • 评论了面试题 Go每日一题(6)
    答案:第二个返回值没有命名。
  • 评论了面试题 Go每日一题(3)
    😀
  • 评论了面试题 Go每日一题(3)
    多说一句,“迭代 map 的结果是无序的”这个特性是从 go 1.0 开始加入的。
  • 评论了面试题 Go每日一题(1)
    0 -> 3 1 -> 3 2 -> 3 3 -> 3
  • 评论了面试题 Go每日一题(104)
    参考答案及解析:s2 的输出结果错误。 s2 的输出是 &{C} &{C} &{C},在前面题目我们提到过,for range 使用短变量声明(:=)的形式迭代变量时,变量 ...
  • 评论了面试题 Go每日一题(103)
    当 range 表达式发生复制时,副本的指针依旧指向原底层数组
  • 评论了面试题 Go每日一题(90)
    答案解析: 参考答案及解析:B。 编译错误 Student does not implement People (Speak method has pointer receiver),值类型 Stu...
  • 评论了面试题 Go每日一题(86)
    func main() { m := map[int]string{0:"zero",1:"one"} for k,v := range m { fmt.Pri...
  • 评论了面试题 Go每日一题(84)
    func main() { s1 := []int{1, 2, 3} s2 := s1[1:] s2[1] = 4 fmt.Println(s1) s2 = append(s2, 5, 6,...
  • 评论了面试题 Go每日一题(74)
    package main import "fmt" func app() func(string) string { t := "Hi" c := func(b...
  • 评论了面试题 Go每日一题(40)
    m 是一个 map,值是 nil。从 nil map 中取值不会报错,而是返回相应的零值,这里值是 int 类型,因此返回 0。 但是但是,向nil的map set值是会报错的,必须先用make才能...
  • 评论了面试题 Go每日一题(25)
    参考答案:BD 参考解析:考的知识点是字符串连接。除了以上两种连接方式,还有 strings.Join()、buffer.WriteString() 等。
  • 评论了面试题 Go每日一题(22)
    答案解析: 参考答案:不能通过编译。 参考解析:这道题的主要知识点是变量声明的简短模式,形如:x := 100. 但这种声明方式有限制: 必须使用显示初始化; 不能提供数据类型,编译器会自动推导;...
  • 评论了面试题 Go每日一题(21)
    [0 0 0 0 0 0 0 0 0 0 1 2 3]
  • 评论了面试题 Go每日一题(18)
    常量无内存地址的
  • 评论了面试题 Go每日一题(15)
    答案:小整数转换为接口值不再需要进行内存分配。小整数是指 0 到 255 之间的数。
  • 评论了面试题 Go每日一题(14)
    | 操作是按位或操作符,它的操作数只能是整数,而上面这道题的操作数是 float64,因此编译不通过。
  • 评论了面试题 Go每日一题(13)
    append(s1,s2…)
  • 评论了面试题 Go每日一题(12)
    不能通过编译,new([]int) 之后的 list 是一个 *[]int 类型的指针,不能对指针执行 append 操作。可以使用 make() 初始化之后再用。同样的,map 和 channel ...
  • 评论了面试题 Go每日一题(11)
    1:new 返回对象的指针 2:make 只能初始化 channel map slice
  • 评论了面试题 Go每日一题(10)
    import –> const –> var –> init() –> main()
  • 评论了面试题 Go每日一题(6)
    第二个返回值没有命名。
  • 评论了面试题 Go每日一题(4)
    代码 1 输出:[0 0 0 0 0 1 2 3] 代码 2 输出:[1 2 3 4]
  • 评论了面试题 Go每日一题(108)
    参考答案及解析:A。 知识点:多重赋值。 多重赋值分为两个步骤,有先后顺序: 计算等号左边的索引表达式和取址表达式,接着计算等号右边的表达式; 赋值;
  • 评论了面试题 Go每日一题(104)
    value是一个变量, 使用value的指针,所以s2都会是c
  • 评论了面试题 Go每日一题(103)
    r = [1 12 13 4 5] a = [1 12 13 4 5] 这道题是昨天第二题的一个解决办法,这的 a 是一个切片,那切片是怎么实现的呢?切片在 go 的内部结构有一个指向底层数组的指...
  • 评论了面试题 Go每日一题(101)
    //1,2,3,4,5 fmt.Println("r = ", r) //1,12,13,4,15 fmt.Println("a = ", a) range...
  • 评论了面试题 Go每日一题(97)
    看清楚这行代码, := 不是 = p, err := foo()
  • 评论了面试题 Go每日一题(96)
    go 中不同类型是不能比较的,而数组长度是数组类型的一部分,所以 [...]int{1} 和 [2]int{1} 是两种不同的类型,不能比较; 切片是不能比较的; 数据是可以比较的, 但是类型和长度...
  • 评论了面试题 Go每日一题(94)
    参考答案及解析:B,编译报错 cannot assign to struct field m["foo"].x in map。错误原因:对于类似 X = Y的赋值操作,必须知道 X 的...
  • 评论了面试题 Go每日一题(91)
    参考答案及解析:0 1 1 2。 知识点:iota 的用法。 iota 是 golang 语言的常量计数器,只能在常量的表达式中使用。 iota 在 const 关键字出现时将被重置为0,con...
  • 评论了面试题 Go每日一题(89)
    基于类型创建的方法必须定义在同一个包内,上面的代码基于 int 类型创建了 PrintInt() 方法,由于 int 类型和方法 PrintInt() 定义在不同的包内,所以编译出错。解决的办法可以定...
  • 评论了面试题 Go每日一题(88)
    如果 len 或 cap 的函数参数 v 是字符串常量,则返回值是一个常量。 如果 v 的类型是数组或指向数组的指针,且表达式 v 没有包含 channel 接收或(非常量)函数调用,则返回值也是一...
  • 评论了面试题 Go每日一题(87)
    10 1 2 3 20 0 2 2 2 0 2 2 1 1 3 4 程序执行到 main() 函数三行代码的时候,会先执行 calc() 函数的 b 参数,即:calc("10",a,...
  • 评论了面试题 Go每日一题(84)
    #更新值,s2底层数组没有变, 还是和s1共用同一个数组 [1 2 4] #s2进行了append操作,生成了新的数组,所以s1还是原来的 [1 2 4]
  • 评论了面试题 Go每日一题(83)
    var a bool = true func main() { defer func(){ fmt.Println("1") }() if a == true { fmt...
  • 评论了面试题 Go每日一题(82)
    golang 的字符串类型是不能赋值 nil 的,也不能跟 nil 比较。
  • 评论了面试题 Go每日一题(80)
    A. &S{"foo"} B. *f() 或者 f()
  • 评论了面试题 Go每日一题(76)
    defer 先进后出
  • 评论了面试题 Go每日一题(75)
    //defer 执行顺序是先进后出 func TestAesGcmDecrypt(t *testing.T) { person := Person{28} // 1. 结果28 先计算 def...
  • 评论了面试题 Go每日一题(74)
    对闭包来说,函数在该语言中是一等公民。一般来说,一个函数返回另一个函数,这个被返回的函数可以应用那个外层函数的局部变量,这形成一个闭包。 通常,闭包通过一个结构体来数显,他存储一个函数和一个关联的上下...
  • 评论了面试题 Go每日一题(73)
    //闭包修改了r的值,所以结果是1 `func f1() (r int) { defer func() { r++ }() return 0 }` //闭包修改了t的值,对r没有任何影响...
  • 评论了面试题 Go每日一题(72)
    类型转换
  • 评论了面试题 Go每日一题(61)
    第一题: a := []int{2: 1} 中,表示指定了第 3 个元素为1 第二题: var x = []int{4: 44, 55, 66, 1: 77, 88} 4: 44, 55, 6...
  • 评论了面试题 Go每日一题(60)
    go fmt.Println(<-ch1) 参数会先计算值, 所以执行<-ch1就是死锁了 func( fmt.Println(<-ch1) ) {}() 修改这样就不会死锁了,...
  • 评论了面试题 Go每日一题(58)
    func incr(p *int) int { *p++ return *p } func main() { p :=1 incr(&p) fmt.Println(p) } //...
  • 评论了面试题 Go每日一题(56)
    showA showB