• 评论了面试题 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
  • 评论了面试题 Go每日一题(55)
    func main() { i := 5 defer hello(i) i = i + 10 //打印5 i1 := 5 defer func() { hello(i1) }()...
  • 评论了面试题 Go每日一题(53)
    参考答案及解析:AD。 B 只支持局部变量声明;C 是赋值,str 必须在这之前已经声明。
  • 评论了面试题 Go每日一题(52)
    参考答案及解析:teacher showB。 知识点:结构体嵌套。在嵌套结构体中,People 称为内部类型,Teacher 称为外部类型;通过嵌套,内部类型的属性、方法,可以为外部类型所有,就好像...
  • 评论了面试题 Go每日一题(49)
    当且仅当接口的动态值和动态类型都为 nil 时,接口类型值才为 nil。
  • 评论了面试题 Go每日一题(48)
    cap() 函数不适用 map, array slice, channel 可以
  • 评论了面试题 Go每日一题(47)
    Go 中的数组是值类型,可比较,另外一方面,数组的长度也是数组类型的组成部分,所以 a 和 b 是不同的类型,是不能比较的,所以编译错误。
  • 评论了面试题 Go每日一题(46)
    知识点:操作符 [i,j]。基于数组(切片)可以使用操作符 [i,j] 创建新的切片,从索引 i,到索引 j 结束,截取已有数组(切片)的任意部分,返回新的切片,新切片的值包含原数组(切片)的 i 索...
  • 评论了面试题 Go每日一题(45)
    ![image.png](https://static.golangjob.cn/240122/620902508c7ace08b0aa43d5335a8695.png)
  • 评论了面试题 Go每日一题(42)
    Go语言的类型机制更加严格,没有隐式类型转换,所以不同类型的数据不能直接参与同一个运算。
  • 评论了面试题 Go每日一题(42)
    Go语言的类型机制更加严格,没有隐式类型转换,所以不同类型的数据不能直接参与同一个运算。
  • 评论了面试题 Go每日一题(41)
    可变参数是切片,切片是引用,所以func内赋值会带出来。
  • 评论了面试题 Go每日一题(40)
    nil map 可以取值,但不能直接赋值
  • 评论了面试题 Go每日一题(39)
    A、B 都是声明 channel;C 读取 channel;写 channel 是必须带上值,所以 D 错误。