溫馨提示×

Go語言反射如何獲取類型

小樊
81
2024-11-08 11:56:11
欄目: 編程語言

在Go語言中,你可以使用反射(reflection)來獲取變量的類型。Go的反射包提供了TypeOf()函數(shù),可以用來獲取變量的類型信息。下面是一個簡單的示例:

package main

import (
	"fmt"
	"reflect"
)

func main() {
	var num int = 42
	var str string = "Hello, reflection!"

	fmt.Println("Type of num:", reflect.TypeOf(num))
	fmt.Println("Type of str:", reflect.TypeOf(str))
}

在這個示例中,我們定義了兩個變量numstr,然后使用reflect.TypeOf()函數(shù)分別獲取它們的類型。運行這個程序,你將看到以下輸出:

Type of num: int
Type of str: string

reflect.TypeOf()函數(shù)返回一個reflect.Type類型的值,它包含了關(guān)于變量類型的信息。你可以使用Name()方法來獲取類型的名稱,例如:

fmt.Println("Type name of num:", reflect.TypeOf(num).Name())
fmt.Println("Type name of str:", reflect.TypeOf(str).Name())

這將輸出:

Type name of num: int
Type name of str: string

0