Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Conversión de Tipos Básica | Tipos de Datos
Introducción a Golang

bookConversión de Tipos Básica

**Es el proceso de convertir datos de un tipo de datos a otro. Sin embargo, es importante tener en cuenta que no siempre es posible convertir datos de un tipo de datos a otro. Por ejemplo, podemos convertir un float en un int y viceversa. Sin embargo, no tendría sentido convertir una string en una int, por lo que no es posible.

Hay dos tipos de conversión de tipos o typecasting. Uno de ellos es Implicit Type Casting. La conversión implícita ocurre cuando Go convierte automáticamente un tipo a otro cuando es seguro y no ambiguo. Por ejemplo, cuando asignamos un valor entero a una variable float, se trata como un float automáticamente, ya que no se pueden perder datos durante la conversión (10 es lo mismo que 10.0):

index.go

index.go

copy
1
var myFloat float32 = 10 // A valid statement

El otro tipo de conversión de tipos es la Clasificación Explícita de Tipos, que ocurre cuando el programador convierte explícitamente datos o expresiones de un tipo a otro. La sintaxis para la conversión explícita de tipos es desiredType(expression), por ejemplo:

index.go

index.go

copy
12345678
package main import "fmt" func main() { var number1 float32 = 7.9 var number2 int = int(number1) fmt.Println(number2) // Outputs 7 }

En el programa anterior, convertimos un valor float32 en un valor int utilizando la conversión explícita de tipos. Como resultado, la parte decimal del número original se descarta, y sólo el valor integral 7 se almacena en number2. Es importante tener en cuenta que en este caso se pierden algunos datos, concretamente la parte decimal del número (0.9). Sin embargo, hemos hecho esa elección explícitamente.

Del mismo modo, podemos convertir una runa en una cadena. En el capítulo Runas, exploramos un programa que mostraba el valor de una Runa, que era un número. Sin embargo, podemos mostrar el equivalente en caracteres de una Runa convirtiéndola en una cadena:

index.go

index.go

copy
123456789
package main import "fmt" func main() { var char rune = 'a' fmt.Println(char) // Outputs 97 fmt.Println(string(char)) // Outputs 'a' }

Sin embargo, no podemos convertir una cadena en una runa:

index.go

index.go

copy
12
var myString string = "A string value" fmt.Println(rune(myString)) // Error: cannot convert myString (variable of type string) to type rune

Es importante señalar que tampoco podemos convertir una cadena que contenga un solo carácter en una runa:

index.go

index.go

copy
1234567
package main import "fmt" func main() { var text string = "a"; fmt.Printf(rune(text)) // Error here }
question mark

¿Cuál de las siguientes es la sintaxis correcta para la asignación de tipos en Go?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 6

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Awesome!

Completion rate improved to 1.96

bookConversión de Tipos Básica

Desliza para mostrar el menú

**Es el proceso de convertir datos de un tipo de datos a otro. Sin embargo, es importante tener en cuenta que no siempre es posible convertir datos de un tipo de datos a otro. Por ejemplo, podemos convertir un float en un int y viceversa. Sin embargo, no tendría sentido convertir una string en una int, por lo que no es posible.

Hay dos tipos de conversión de tipos o typecasting. Uno de ellos es Implicit Type Casting. La conversión implícita ocurre cuando Go convierte automáticamente un tipo a otro cuando es seguro y no ambiguo. Por ejemplo, cuando asignamos un valor entero a una variable float, se trata como un float automáticamente, ya que no se pueden perder datos durante la conversión (10 es lo mismo que 10.0):

index.go

index.go

copy
1
var myFloat float32 = 10 // A valid statement

El otro tipo de conversión de tipos es la Clasificación Explícita de Tipos, que ocurre cuando el programador convierte explícitamente datos o expresiones de un tipo a otro. La sintaxis para la conversión explícita de tipos es desiredType(expression), por ejemplo:

index.go

index.go

copy
12345678
package main import "fmt" func main() { var number1 float32 = 7.9 var number2 int = int(number1) fmt.Println(number2) // Outputs 7 }

En el programa anterior, convertimos un valor float32 en un valor int utilizando la conversión explícita de tipos. Como resultado, la parte decimal del número original se descarta, y sólo el valor integral 7 se almacena en number2. Es importante tener en cuenta que en este caso se pierden algunos datos, concretamente la parte decimal del número (0.9). Sin embargo, hemos hecho esa elección explícitamente.

Del mismo modo, podemos convertir una runa en una cadena. En el capítulo Runas, exploramos un programa que mostraba el valor de una Runa, que era un número. Sin embargo, podemos mostrar el equivalente en caracteres de una Runa convirtiéndola en una cadena:

index.go

index.go

copy
123456789
package main import "fmt" func main() { var char rune = 'a' fmt.Println(char) // Outputs 97 fmt.Println(string(char)) // Outputs 'a' }

Sin embargo, no podemos convertir una cadena en una runa:

index.go

index.go

copy
12
var myString string = "A string value" fmt.Println(rune(myString)) // Error: cannot convert myString (variable of type string) to type rune

Es importante señalar que tampoco podemos convertir una cadena que contenga un solo carácter en una runa:

index.go

index.go

copy
1234567
package main import "fmt" func main() { var text string = "a"; fmt.Printf(rune(text)) // Error here }
question mark

¿Cuál de las siguientes es la sintaxis correcta para la asignación de tipos en Go?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 6
some-alt