sábado, 20 de octubre de 2018

Variables en Go

Los datos pueden almacenarse en variables, mediante las cuales nos referimos a los datos, ya sea para asignar valores o para leer dichos valores. El uso de las variables permiten ahorrar trabajo, ya que pueden reutilizarse mientras se ejecuta el programa.


Declaración de variables

Una variable debe declararse antes de poder ser usada. Para ello, debemos indicar su nombre y su tipo y, posteriormente, asignarle el valor correspondiente.

   var cadena string
   cadena = "Territorio Go"

La asignación (así como también la reasignación) de valores a una variable se realiza especificando el nombre de la variable, signo de igual (=) y seguido del valor a asignar.

Podemos abreviar la declaración y asignación de valores de variables en una única línea

   var cadena string = "Territorio Go"

El tipo string define la variable cadena para que almacene valores de tipo cadena de texto.

Los tipos de datos básicos en Go son los siguientes:

  • string: Cadena de texto
  • int: Número entero
  • float64: Número real o con decimales
  • bool: Valor lógico true o false

También es posible definir varias variables del mismo tipo en la misma línea.

   var num1, num2 float64
   num1 = 23.456
   num2 = 12.89

Podemos declarar y asignar varias variables en la misma línea.

   var esCasado, esMayor bool = true, false

Ejemplo

Para ilustrar la declaración y uso de variables, usaremos el siguiente código

package main

import "fmt"

func main() {
   // Ejemplo de declaracion y posterior asignacion
   var cadena string
   cadena = "Territorio Go"

   // Ejemplo de declaracion y asignacion a la vez
   var entero int = 47

   // Ejemplo de declaracion de varias variables
   var num1, num2 float64
   num1 = 23.456
   num2 = 12.89

   // Ejemplo de declaacion y asignacion multiple
   var esCasado, esMayor bool = true, false

   fmt.Printf("cadena - Tipo: %T - Valor: %v\n", cadena, cadena)
   fmt.Printf("entero - Tipo: %T - Valor: %v\n", entero, entero)
   fmt.Printf("num1 - Tipo: %T - Valor: %v\n", num1, num1)
   fmt.Printf("num2 - Tipo: %T - Valor: %v\n", num2, num2)
   fmt.Printf("esCasado - Tipo: %T - Valor: %v\n", esCasado, esCasado)
   fmt.Printf("esMayor - Tipo: %T - Valor: %v\n", esMayor, esMayor)

   // Reasignacion
   entero = 13
   fmt.Println("entero vale ahora ", entero)
}

Podemos realizar comentarios en el código, con el fin de anotar o de documentar qué hace dicho código. Esto es muy útil para recordar lo que hace el código, o para que otros programadores, si deben mantener nuestro código, sepan qué se ha hecho y por qué, facilitándoles el trabajo para entender el programa.

Los comentarios no hacen nada en el programa, salvo añadir documentación o anotaciones.

Cuando Go encuentra una línea que comienza con dos barras (//), asume que es un comentario y no lo ejecuta.

   // Esto es un comentario y no hace nada

La función Printf() del paquete fmt, permite imprimir en pantalla un texto formateado en base a una plantilla. El verbo de plantilla %T es sustituido por el tipo de dato. El verbo de plantilla %v es sustituido por el valor correspondiente en el formato de dicho tipo de dato.

Después de la cadena de texto que se usa como plantilla en la función Printf(), se especifican los valores que van a visualizarse en la plantilla, uno por cada verbo de plantilla, en el mismo orden (de izquierda a derecha).

La ejecución de este código visualizará el siguiente resultado:

$ go run variables
cadena - Tipo: string - Valor: Territorio Go
entero - Tipo: int - Valor: 47
num1 - Tipo: float64 - Valor: 23.456
num2 - Tipo: float64 - Valor: 12.89
esCasado - Tipo: bool - Valor: true
esMayor - Tipo: bool - Valor: false
entero vale ahora  13

Enlaces de interés

No hay comentarios:

Publicar un comentario