Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Menghantar antara muka dengan Selamat{} ke int dalam Go?

Bagaimana untuk Menghantar antara muka dengan Selamat{} ke int dalam Go?

Susan Sarandon
Lepaskan: 2024-12-12 13:53:10
asal
699 orang telah melayarinya

How to Safely Cast interface{} to int in Go?

Menghantar Antara Muka{} ke Int

Apabila mengekstrak nilai daripada JSON dan cuba menghantarnya ke integer, anda mungkin menghadapi ralat menunjukkan bahawa antara muka{} tidak boleh ditukar terus kepada int. Untuk menyelesaikan masalah ini, penegasan jenis diperlukan.

Dalam contoh kod yang disediakan, baris:

iAreaId := int(val)
Salin selepas log masuk

menyebabkan ralat kerana val ialah antara muka{}, yang tidak boleh dihantar terus kepada int. Sebaliknya, penegasan jenis diperlukan:

iAreaId := val.(int)
Salin selepas log masuk

Penegasan jenis ini secara paksa menghantar nilai val kepada int. Sebagai alternatif, anda boleh menggunakan versi tidak panik:

iAreaId, ok := val.(int)
Salin selepas log masuk

Dengan memasukkan pembolehubah ok, anda boleh menyemak sama ada penegasan itu berjaya sebelum meneruskan.

Selain itu, adalah penting untuk ambil perhatian bahawa penukaran eksplisit hanya boleh dilakukan apabila jenis asas sumber dan destinasi serasi, seperti yang ditakrifkan oleh spesifikasi bahasa Go.

Atas ialah kandungan terperinci Bagaimana untuk Menghantar antara muka dengan Selamat{} ke int dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan