Változó Kiiratása
Típusos deklarálás két sorban
A Go-ban változókat többféleképpen is létre tudunk hozni. Mivel a Go egy típusos nyelv, egy változó csak egy féle típusú lehet, és miután értéket adtál a változónak, már nem változtathatod meg a típusát.
var name string
name = "Gyula"
Ez a klasszikus létrehozása a változónak Go-ban.
1: var
- bejelented, hogy változót hozol létre
2: name
- elnevezed a változót
camelCase, tehát “ilyenValtozoNeveketAdunkEkezetekNelkul”
3: string
- elmondod milyen típusú adatot fog tárolni ez a változó
Típusos deklarálás egy sorban
Ugyanezt meg lehet tenni egyetlen sorban is, az egyszerűség kedvéért.
var name = "gyula"
Ráadásul a Go-ban egy sorban több változót is létre tudsz hozni.
var name, occupation string = "gyula", "programmer"
Gyors deklarálás
A Go intelligens annyira, hogy felismerje milyen típusú értéket szeretnél beletenni egy változóba.
Ezért egy másik módja a változó deklarásának és inicializálásának egy lépésben az alábbi:
valtozoNev := "ertek"
Először elnevezzük a változónkat, utána létrehozzuk és egyből értéket is adunk neki (:=
), végül pedig az egyenlőségjel után értéket adunk neki, ami ebben az esetben egy string (szöveg) érték lesz.
Ha ki szeretnénk íratni ennek a változónak az értékét egy szöveg részeként, azt az alábbi módon tehetjük meg:
package main
import "fmt"
func main() {
gyulaAge := 3
fmt.Printf("Hello Gyula, a korod: %v", gyulaAge)
}
Mivel a Go egy típusos nyelv, ezért a gyulaAge := 3
észleli, hogy a 3 egy szám, ezért a gyulaAge
típusa automatikusan int
lesz.
Az int, az egy szám érték, a különböző változók alapvető értékét pedig a %v
-el tudjuk kiíratni (érték = value = %v), ezért ha ki szeretnéd iratni akármelyik változót, úgy az fmt.Printf
(PRINT in a Formatted way) függvénynek átadhatod azt, hogy %v
, utána pedig egy vessző után át kell adnod a változót, ami tárolja az értéket.
Ha stringet szeretnél kiíratni, akkor azt %s
-ként megjelölheted.
A Go-ban található elérhető adattípusokról később lesz szó.
Több Változó Kiiratása
Most irassunk ki ugyan ebben a formában egy int
típusú változót, és két string
-et, hogy ráérezz az ízére!
package main
import "fmt"
func main() {
name := "Gyula"
occupation := "programozó"
age := 3
fmt.Printf("Hello %s, a korod: %v, a foglalkozásod pedig: %s", name, age, occupation)
}
Gyula láthatóan korán kezdte a programozást…
Feladat
Adj ehhez a programhoz hozzá még két változót. Az egyik legyen
bool
típusú, a másik egyfloat32
(lebegőpontos szám)Egy új sorba írasd ki az értéküket, valamint a típusukat is! (típus kiíratás:
%T
Új sor:\n
)
Feladat egy lehetséges megoldása
Először próbáld meg megírni saját magad, végül pedig puskázz nyugodtan azzal, hogy IDE kattintasz
package main
import "fmt"
func main() {
name := "Gyula"
occupation := "programozó"
age := 30
vaccinated := true
heightInCM := 178.5
fmt.Printf("Hello %s, a korod: %v, a magasságod centiméterben %v a foglalkozásod pedig: %s. Ha érdekel, hogy oltva vagy-e, a válasz: %v \n", name, age, heightInCM, occupation, vaccinated)
fmt.Printf("A változók típusai: %T, %T, %T, %T, %T", name, age, heightInCM, occupation, vaccinated)
}