ir Idioma de la Interfaz Tipo determinación afirmación

1 Tipo afirmación

Escribir: x (t) ..
x: una necesidad de afirmar el tipo de interfaz, T: tipos afirmación.
Para: determinar el puerto T x satisface la consulta contiene la T x de la interfaz.

2 determina si una variable implementa la interfaz especificada

Ejemplos:

if err,ok :=x.(error); ok {
	return err.Error()
}

3 tipos de conversiones

Definición: Si queremos revertir esta variables de interfaz ⾥ ⾯ sabe el almacenamiento real es el tipo de objeto que se puede imprimir utilizando la siguiente ⽅ llevarse a cabo debido a la conversión

    var t int
    var x interface{}
    x = t
    y, ok = x.(int) //转成int,带检查

Obtiene el tipo 4

func justify(items ...interface{}) {
	for index, v := range items {
		switch v.(type) {
		case int:
			fmt.Printf("第 %d 个参数 is int\n", index)
		case int32:
			fmt.Printf("第 %d 个参数 is int32\n", index)
		case float32:
			fmt.Printf("第 %d 个参数 is float32\n", index)
		
		}
	}
}

func main(){
	var a int
	var b float32
	var c int32
	justify(a, b, c)
}
Publicados 103 artículos originales · ganado elogios 21 · Vistas a 20000 +

Supongo que te gusta

Origin blog.csdn.net/leinminna/article/details/105163278
Recomendado
Clasificación