[Go Basics] Conversión de tipos de datos básicos del lenguaje Go: conversión de cadena, entero, número de punto flotante, carácter y tipo booleano

introducir

En la programación de computadoras, se utilizan diferentes tipos de datos para representar diferentes tipos de datos. En el lenguaje Go (Golang), los tipos de datos básicos incluyen cadenas, enteros, números de coma flotante, caracteres y tipos booleanos. En el desarrollo real, a menudo es necesario convertir entre diferentes tipos de datos para satisfacer diferentes necesidades y cálculos. Este blog analizará en profundidad la conversión entre tipos de datos básicos en el lenguaje Go, incluidos los métodos de conversión, las precauciones y las aplicaciones prácticas entre cadenas y números enteros, cadenas y números de coma flotante, caracteres y enteros, y enteros y tipos booleanos.

Conversión de cadenas a enteros

La conversión entre cadenas y enteros es una operación común. Puede convertir el número representado por la cadena en un entero, y también puede convertir el entero en una cadena.

cadena a entero

Al convertir cadenas en enteros, puede usar las funciones strconvdel paquete Atoi.

package main

import (
    "fmt"
    "strconv"
)

func main() {
    
    
    str := "12345"
    num, err := strconv.Atoi(str)
    if err != nil {
    
    
        fmt.Println("Error:", err)
        return
    }
    fmt.Println("Number:", num)
}

entero a cadena

Al convertir números enteros en cadenas, puede usar las funciones strconvdel paquete Itoa.

package main

import (
    "fmt"
    "strconv"
)

func main() {
    
    
    num := 12345
    str := strconv.Itoa(num)
    fmt.Println("String:", str)
}

Convertir cadenas en flotantes

La conversión entre cadenas y números de punto flotante también es una operación común. El decimal representado por la cadena se puede convertir en un número de punto flotante, y el número de punto flotante también se puede convertir en una cadena.

cuerda para flotar

Al convertir cadenas en flotantes, puede usar las funciones strconvdel paquete ParseFloat.

package main

import (
    "fmt"
    "strconv"
)

func main() {
    
    
    str := "3.1415926"
    num, err := strconv.ParseFloat(str, 64)
    if err != nil {
    
    
        fmt.Println("Error:", err)
        return
    }
    fmt.Println("Number:", num)
}

Flotador a cadena

Al convertir números de coma flotante en cadenas, puede usar fmtlas funciones de formato del paquete.

package main

import (
    "fmt"
)

func main() {
    
    
    num := 3.1415926
    str := fmt.Sprintf("%.2f", num)
    fmt.Println("String:", str)
}

Conversión de caracteres a enteros

Las conversiones entre caracteres y enteros implican el valor del código ASCII del carácter. Los caracteres se pueden convertir en números enteros y los números enteros se pueden convertir en caracteres.

carácter a entero

Al convertir un carácter en un número entero, puede usar la conversión de tipo directamente.

package main

import "fmt"

func main() {
    
    
    char := 'A'
    num := int(char)
    fmt.Println("Number:", num)
}

De entero a carácter

Las conversiones de tipo se pueden utilizar al convertir números enteros en caracteres.

package main

import "fmt"

func main() {
    
    
    num := 65
    char := rune(num)
    fmt.Println("Character:", char)
}

Conversión de enteros a tipos booleanos

Las conversiones entre enteros y tipos booleanos involucran la relación entre valores verdaderos y falsos, con enteros distintos de cero convertidos a truey enteros cero convertidos a false.

De entero a tipo booleano

El juicio condicional se puede utilizar al convertir un número entero a un tipo booleano.

package main

import "fmt"

func main() {
    
    
    num := 42
    boolean := num != 0
    fmt.Println("Boolean:", boolean)
}

Booleano a entero

El juicio condicional se puede utilizar al convertir tipos booleanos en enteros.

package main

import "fmt"

func main() {
    
    
    boolean := true
    num := 0
    if boolean {
    
    
        num = 1
    }
    fmt.Println("Number:", num)
}

Notas sobre la conversión de tipos

Al realizar la conversión de tipos, debe prestar atención a los siguientes puntos:

rango de datos

Al realizar conversiones de tipo, debe asegurarse de que el rango de datos no se desborde ni pierda precisión.

legalidad de los datos

Al convertir entre caracteres y números enteros, números de coma flotante y números enteros, es necesario garantizar la legalidad de los datos.

Booleano a entero

Cuando un tipo booleano se convierte en un entero, el valor verdadero es un entero distinto de cero y el valor falso es un entero cero.

Aplicación práctica de la conversión de tipos

La conversión de tipos tiene una amplia gama de escenarios de aplicación en el desarrollo real, cubriendo varios requisitos informáticos y de procesamiento de datos.

Conversión de formato de datos

Al leer y procesar fuentes de datos como archivos, bases de datos, etc., puede ser necesario convertir los datos de un tipo a otro para análisis y cálculos posteriores.

Procesamiento y Operación de Datos

Durante el procesamiento y cálculo de datos, es posible que sea necesario convertir diferentes tipos de datos para cumplir con las fórmulas y los requisitos de cálculo.

juicio condicional

En el juicio condicional, puede ser necesario convertir un número entero en un tipo booleano, o convertir un tipo booleano en un número entero para cumplir con los requisitos de las operaciones lógicas.

Resumir

La conversión de tipos es una operación común en la programación de computadoras, que se utiliza para convertir entre diferentes tipos de datos para satisfacer diferentes necesidades y cálculos. Este blog analiza en profundidad la conversión entre tipos de datos básicos en el lenguaje Go, incluidos los métodos de conversión, las precauciones y las aplicaciones prácticas entre cadenas y números enteros, cadenas y números de coma flotante, caracteres y enteros, y enteros y tipos booleanos. Comprender los principios y los escenarios de aplicación de la conversión de tipos puede ayudarlo a manejar mejor los diferentes tipos en el proceso de programación.

Supongo que te gusta

Origin blog.csdn.net/qq_21484461/article/details/132282686
Recomendado
Clasificación