Penukaran Int64 kepada Int dalam Go: Strategi dan Perangkap
Apabila bekerja dengan jenis angka dalam Go, adalah penting untuk memahami perbezaan yang ketara antara mereka. Satu senario biasa ialah keperluan untuk menukar int64 (integer 64-bit) kepada int (integer 32-bit).
Penukaran Jenis lwn. Perbandingan
Untuk menukar int64 kepada int, hanya lakukan penukaran jenis menggunakan jenis data masing-masing dalam ungkapan, seperti sebagai:
var a int64 var b int a = int64(b)
Walau bagaimanapun, berhati-hati semasa membandingkan nilai pelbagai jenis. Sentiasa tukar jenis yang lebih kecil kepada yang lebih besar untuk mengelakkan kemungkinan pemotongan. Contohnya:
var x int32 = 0 var y int64 = math.MaxInt32 + 1 // y == 2147483648 if x < int32(y) { // This evaluates to false, because int32(y) is -2147483648 }
Menghantar Int64 kepada Int dengan Had
Dalam contoh khusus anda, apabila anda menghadapi ralat semasa menukar maxInt daripada int64 kepada int, pertimbangkan berikut:
for a := 2; a < int(maxInt); a++ {
Kod ini akan gagal apabila maxInt melimpahi nilai maksimum taip int pada sistem anda. Untuk mengelakkan isu ini, gunakan int64(a) < maxInt untuk memastikan perbandingan dilakukan dengan betul.
Ingat, memahami nuansa jenis data yang berbeza dan penukaran jenis adalah penting untuk menulis kod Go yang mantap dan cekap.
Atas ialah kandungan terperinci Cara Selamat Menukar Int64 kepada Int in Go: Panduan untuk Mengelakkan Isu Limpahan dan Pemangkasan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!