Este artículo presenta principalmente la conversión mutua entre los tipos de datos básicos de Go y los tipos de cadena. El artículo presenta el código de muestra con gran detalle. Tiene un cierto valor de aprendizaje de referencia para el estudio o el trabajo de todos. Amigos que lo necesiten, sigan al editor para aprender juntos .
1. Tipo de datos básicos a tipo de cadena
Método 1: fmt.Sprintf("% parámetro", expresión)
1) Explicación oficial: Sprintf genera una cadena formateada de acuerdo con el parámetro de formato y devuelve la cadena.
1 |
|
2) Método de uso específico:
① Tipo de número a tipo de cadena
1 2 |
|
② Tipo flotante a tipo cadena
1 2 |
|
③ Tipo booleano a tipo de cadena
1 2 |
|
④ Tipo de carácter (byte) a tipo de cadena
1 2 |
|
Método 2: use las funciones del paquete strconv
1 2 3 4 5 |
|
① Tipo de número a tipo de cadena (dos formas)
1 2 3 4 5 |
|
② Tipo flotante a tipo cadena
1 |
|
f representa el número de punto flotante que se convertirá
formato de representación fmt: 'f' (-ddd.dddd), 'b' (-ddddp±ddd, el exponente es binario), 'e' (-d.dddde±dd, exponente decimal), 'E' (-d. ddddE±dd, exponente decimal), 'g' (use el formato 'e' para un exponente grande, de lo contrario, el formato 'f'), 'G' (use el formato 'E' para un exponente grande, de lo contrario, el formato 'f').
prec controla la precisión (excluyendo la parte del exponente): para 'f', 'e', 'E', indica el número de dígitos después del punto decimal; para 'g', 'G', controla el total número de dígitos. Si prec es -1, significa usar el número mínimo de números requeridos para representar f.
bitSize indica el tipo de fuente de f (32: float32, 64: float64), y se redondeará en consecuencia.
1 2 |
|
③ Tipo booleano a tipo de cadena
1 2 |
|
2. Tipo de cadena a tipo de datos básico
Usando las funciones del paquete strconv
① Tipo de cadena a tipo booleano
1 2 |
|
② Tipo de cadena a tipo de número (dos formas)
a.
1 |
|
Devuelve el valor entero representado por la cadena, aceptando un signo.
base指定进制(2到36),如果base为0,则会从字符串前置判断,"0x"是16进制,"0"是8进制,否则是10进制;
bitSize指定结果必须能无溢出赋值的整数类型,0、8、16、32、64 分别代表 int、int8、int16、int32、int64;返回的err是*NumErr类型的,如果语法有误,err.Error = ErrSyntax;如果结果超出类型范围err.Error = ErrRange。
1 2 |
|
b.
1 2 |
|
③字符串类型转浮点类型
1 |
|
如果s合乎语法规则,函数会返回最为接近s表示值的一个浮点数(使用IEEE754规范舍入)。bitSize指定了期望的接收类型,32是float32(返回值可以不改变精确值的赋值给float32),64是float64;返回值err是*NumErr类型的,语法有误的,err.Error=ErrSyntax;结果超出表示范围的,返回值f为±Inf,err.Error= ErrRange。
1 2 |
|
到此这篇关于Go基本数据类型与string类型互转的文章就介绍到这了,希望可以帮到你