如果我想比较两种类型——字符串和接口{},我通常会写:
package main
import "log"
func main() {
var p1 interface{}
var p2 string
p1 = "123"
p2 = "123"
if v, ok := p1.(string); ok {
log.Println(v == p2)
} else {
log.Println("false")
}
}
我认为它是type(p1) != string时的保存变体。但是如果我写它是正确的吗?:
package main
import "log"
func main() {
var p1 interface{}
var p2 string
p1 = "123"
p2 = "123"
log.Println(p1 == p2)
}
如果 type(p1) != string 没有错误。但它是相同的变体还是我应该写上一个?
去
斯蒂芬大帝
相关分类