Rumah > pembangunan bahagian belakang > Golang > Cara menggunakan penegasan jenis untuk penukaran jenis dalam golang

Cara menggunakan penegasan jenis untuk penukaran jenis dalam golang

PHPz
Lepaskan: 2024-05-01 15:45:01
asal
543 orang telah melayarinya

Jenis penegasan dalam Go digunakan untuk menukar nilai antara muka kepada jenis yang lebih khusus. Ia terdiri daripada langkah-langkah berikut: Isytiharkan nilai antara muka dan jenis sasaran. Tukar nilai antara muka kepada jenis sasaran menggunakan sintaks penegasan jenis dan tetapkan hasilnya kepada pembolehubah. Gunakan pembolehubah boolean untuk menyemak sama ada penukaran berjaya. Jika penukaran gagal, pembolehubah sasaran akan ditetapkan kepada sifar.

golang 如何使用类型断言进行类型转换

Golang Cara menggunakan penegasan jenis untuk penukaran jenis

Penegasan jenis ialah operasi khas dalam Go yang membolehkan kami menukar nilai antara muka kepada jenis yang lebih khusus. Ini berguna apabila bekerja dengan data yang tidak ditaip atau apabila anda perlu menyemak jenis pembolehubah semasa masa jalan.

Syntax

Sintaks penegasan jenis adalah seperti berikut:

value, ok := value.(Type)
Salin selepas log masuk

di mana:

  • nilai ialah nilai antara muka yang hendak ditukar. value 是要转换的接口值。
  • Type 是我们想要转换到的类型。
  • ok 是一个布尔值,表示转换是否成功。

实战案例

假设我们有一个接口值 i,其中存储了一个 Person 结构体:

type Person struct {
    Name string
    Age  int
}

func main() {
    i := Person{"John", 30}
}
Salin selepas log masuk

如果我们想要将 i 转换为 Person 类型,我们可以使用类型断言:

if person, ok := i.(Person); ok {
    fmt.Println(person.Name, person.Age)
}
Salin selepas log masuk

如果转换成功,它将把 person 赋值为 Person 类型,并将 ok 赋值为 true。否则,person 将被设置为 nilok 将被设置为 false

注意

  • 类型断言只能用于接口值。
  • 如果类型转换失败,value 将被设置为 nilok 将被设置为 false
  • 使用类型断言时,务必要检查 ok
  • Jenis ialah jenis yang ingin kita tukar.
🎜ok ialah nilai Boolean yang menunjukkan sama ada penukaran berjaya. 🎜🎜🎜🎜Kes praktikal🎜🎜🎜 Katakan kita mempunyai nilai antara muka i, yang menyimpan struktur Orang: 🎜rrreee🎜Jika kita ingin menukar i ditukar kepada jenis <code>Orang, kita boleh menggunakan penegasan jenis: 🎜rrreee🎜Jika penukaran berjaya, ia akan menetapkan orang kepada Orang taip dan tetapkan ok kepada true. Jika tidak, orang akan ditetapkan kepada nil dan ok akan ditetapkan kepada false. 🎜🎜🎜Nota🎜🎜🎜🎜Jenis penegasan hanya boleh digunakan untuk nilai antara muka. 🎜🎜Jika penukaran jenis gagal, value akan ditetapkan kepada nil dan ok akan ditetapkan kepada false. 🎜🎜Apabila menggunakan penegasan jenis, pastikan anda menyemak nilai ok untuk memastikan penukaran berjaya. 🎜🎜

Atas ialah kandungan terperinci Cara menggunakan penegasan jenis untuk penukaran jenis dalam golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan