golang int cast

WBOY
WBOYasal
2023-05-13 10:10:37888semak imbas

Di Golang, jenis int ialah jenis lalai jenis integer, tetapi dalam atur cara, anda mungkin menghadapi situasi di mana int perlu dipaksa untuk ditukar, seperti menukar int kepada jenis integer lain, menukar jenis apungan kepada jenis int , dsb. tunggu. Artikel ini akan meneroka kaedah paksaan jenis int di Golang.

  1. Tukar int kepada jenis integer lain

Di Golang, jenis int menjadi lalai kepada 32-bit (4 bait) atau 64-bit (8 bait), dan Nilai julat dari $-2^{31}$ hingga $2^{31}-1$ dan $-2^{63}$ hingga $2^{63}-1$ masing-masing, bergantung pada seni bina mesin yang sedang dijalankan pada. Jika anda perlu menukar jenis int kepada jenis integer lain (seperti int8, int16, int3, int64, uint8, uint16, uint32, uint64), anda perlu melaksanakannya melalui penukaran jenis.

Kaedah khusus adalah seperti berikut:

var a int = 100
var b int8 = int8(a)   // 将 int 类型转换为 int8 类型
var c int16 = int16(a) // 将 int 类型转换为 int16 类型
var d int32 = int32(a) // 将 int 类型转换为 int32 类型
var e int64 = int64(a) // 将 int 类型转换为 int64 类型
var f uint8 = uint8(a) // 将 int 类型转换为 uint8 类型
var g uint16 = uint16(a) // 将 int 类型转换为 uint16 类型
var h uint32 = uint32(a) // 将 int 类型转换为 uint32 类型
var i uint64 = uint64(a) // 将 int 类型转换为 uint64 类型

Perlu diambil perhatian bahawa penukaran jenis yang berbeza akan menyebabkan kehilangan ketepatan atau masalah limpahan, dan jenis data yang sesuai perlu dipilih mengikut senario tertentu .

  1. Tukar jenis apungan kepada jenis int

Di Golang, jenis apungan digunakan untuk menyimpan nombor titik terapung dan jenis lalainya ialah float64. Jika anda perlu menukar jenis apungan kepada jenis int, anda perlu menggunakan kaedah Round(), Floor() atau Ceil() di bawah pakej matematik yang disediakan oleh Golang Kaedah ini boleh membulatkan, membulatkan ke bawah atau membulatkan apungan taip.

Kaedah khusus adalah seperti berikut:

import "math"

var a float64 = 123.56

var b int = int(math.Round(a)) // 四舍五入
var c int = int(math.Floor(a)) // 向下取整
var d int = int(math.Ceil(a))  // 向上取整

Perlu diambil perhatian bahawa apabila menukar nombor titik terapung kepada jenis integer, kehilangan ketepatan atau masalah limpahan mungkin berlaku. Oleh itu, pilihan jenis data perlu dipertimbangkan dengan teliti sebelum penukaran, serta pengecualian yang mungkin berlaku semasa proses penukaran.

  1. Tukar jenis int kepada jenis rentetan

Dalam Golang, untuk menukar jenis int kepada jenis rentetan anda perlu menggunakan kaedah Itoa() yang disediakan dalam pakej strconv. Kaedah ini boleh menukar jenis integer kepada jenis rentetan yang sepadan.

Kaedah khusus adalah seperti berikut:

import "strconv"

var a int = 123

var b string = strconv.Itoa(a) // 将 int 类型的 a 转换为字符串类型

Perlu diambil perhatian bahawa kaedah Itoa() hanya boleh menukar jenis int kepada jenis rentetan dan hanya boleh menyokong format integer standard. Jika anda perlu menukar integer dalam format lain kepada jenis rentetan, anda perlu menggunakan kaedah output berformat yang disediakan oleh Golang.

Di atas ialah kaedah penukaran paksa jenis int di Golang Ia adalah perlu untuk memilih jenis data yang sesuai mengikut situasi tertentu, dan berhati-hati menangani situasi tidak normal yang mungkin berlaku semasa proses penukaran untuk memastikan. ketepatan operasi program.

Atas ialah kandungan terperinci golang int cast. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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 sebelumnya:pelaksanaan penegasan golangArtikel seterusnya:pelaksanaan penegasan golang