MST

星途 面试题库

面试题:Go语言中switch语句如何处理类型断言

在Go语言里,简述如何使用switch语句进行类型断言,给出一个示例代码,假设有一个接口类型的变量,通过switch语句判断它实际指向的具体类型并打印相应信息。
17.2万 热度难度
编程语言Go

知识考点

AI 面试

面试题答案

一键面试

在Go语言中,使用switch语句进行类型断言的语法如下:

switch v := x.(type) {
case type1:
    // 处理type1类型
case type2:
    // 处理type2类型
default:
    // 处理其他类型
}

示例代码如下:

package main

import (
    "fmt"
)

func main() {
    var x interface{}
    x = "Hello"

    switch v := x.(type) {
    case string:
        fmt.Printf("It's a string, value is %s\n", v)
    case int:
        fmt.Printf("It's an integer, value is %d\n", v)
    default:
        fmt.Printf("Unknown type\n")
    }
}

在上述代码中,定义了一个接口类型变量x并赋值为字符串"Hello"。然后通过switch语句进行类型断言,判断x实际指向的类型。如果是string类型,打印出相应信息;如果是int类型,也打印相应信息;如果是其他类型,则打印Unknown type