[]interface{}{byte(6), 'a', uint(10), int32(-4)} 这种表达是什么意思??

来源:7-2 Go语言-switch语句

y_play

2018-06-03 10:52

又是接口又是数组,接口里面不都是方法吗?

写回答 关注

4回答

  • 暮日孤影
    2020-06-18 14:14:57

    interface{} 是一个空的 interface 类型,一个类型如果实现了一个 interface 的所有方法就说该类型实现了这个 interface,空的 interface 没有方法,所以可以认为所有的类型都实现了 interface{}

  • Ywandung_Lyou
    2019-02-10 19:46:37

    `rand.Intn(4) % 2`的结果是0或1;如果结果是0就是byte类型,请问者为什么会输出“Case A.”?

    tom_0

    所以系统提供的答案是错误的。我亲自上机测试过了,我把答案写成了一个方法,然后循环调用了100次,证明系统提供的答案是错误的

    2019-05-03 10:09:15

    共 1 条回复 >

  • 灿烂满天星
    2018-12-23 16:33:53

    []interface{}{byte(6),  'a',  uint(10),  int32(-4)} 是一个切片,其中'a'在这里会自动转换为ASCII码,也就是97。等同于 []interface{}{byte(6),  int(97),  uint(10),  int32(-4)}  

  • sliverg
    2018-06-04 06:44:52

    这就是一个slice, interface的意思是这个slice里面可以是任何类型, byte(6),uint(10)   ,这些都是类型转换,都是一个实数。还有你这个有错误,'a'这个会编译报错,GO不支持单引号


    实际上你可以理解为这样一个slice     []interface{1,"a",3,4,5}    ,

    weibo_...

    a是字符,不是字符串

    2021-02-19 13:26:36

    共 2 条回复 >

Go语言第一课

Go语言入门教程,编程之必备知识扩散,打好Go语言编程基础

107752 学习 · 148 问题

查看课程

相似问题