Покажи всички категории

Константи, променливи и типове данни в Go


Оценка 4 от максимум 5. Общо гласували: 13.

добавен:
2010-09-13 19:17:57
прегледи:
2575
автор:
ivan.h

В тази статия ще представя константите и променливите в GO. GO е статичен език въпреки че много хора го определиха като динамичен.

Слабо типизиран е, но позволява да избираме - може да определим една променлива дали да е от даден тип или не. Както в много други езици така и в GO има константи. За да запазиме стойност като константа трябва да използваме ключувата дума const.
Пример за константа е:

package main

import  "fmt" 
    const Pi float = 3.14
    func main() {
    fmt.Println(Pi) 
}


Програмата ще отпечата 3.14. естествено една константа неможе да бъде променена нейната стойност дори в горния пример да напишете const Pi = 12. Друг начин за записване на стойнст в константа е като декларирате нейният тип. Примерно можете да напишете const Pi float = 3.14, като типа на константата е float.

Пример за друг начин на записване на константи е:
const user, pass, age  = "Go", "passw", 2 

Резултатът е: Go passw 2.

Понякога се налага да създадеме много константи в един файл. За това си иманачин и той е:
const (
    edno, dve, tri, chetri, pet =  1, 2, 3, 4, 5
    shest, sedem, osem, devet, deset = 6, 7, 8, 9, 10
)
Както забелязахте изброяваме ги в скобите () .


Типове данни

Числови типове:
int
uint
float
int8
uint8 = byte
int16
uint16
int32
uint32
float32
int64
uint64
float64

Важно е да запомните че типа int на 32 битиова система не е еднакво с int32!!!
Дори int в GO не е като int в java.

Друг тип е Bool
Той има 2 стойности true и false

Типа String
Това също като bool е нещо познато ни от другите езици.

За деклариране се използват няколко думи и това са:
var, const, type, func.

Деклариране на променлива:
Променливи се декларират с думата var. Следват няколко примера за това как може да декларираме променливи:

var g int
var a = "a"
var b string = "b"
var c int = 5
var d, e int32 = 1, 2
var f, g, h = 1, "g", 3.14

Ако имате да изброявате доста променливи естествено непрактично е всеки път да пишете var. Решението е следното:

var (
    g int
    a = "a"
    b string = "b"
    c int = 5
    d, e int32 = 1, 2
    f, g, h = 1, "g", 3.14
)

Това можете да го правите само при const, type, var. Има и по кратък начин за деклариране на променлива и той е - вместо var h = 5 пишеме h := 5
Това се прави само когато израза е в тялото на функция, в противен случай ще получите следното съобщение за грешка от компилатора: 1.go:4: non-declaration statement outside function body.

Пример за декларация с ":=":
a, b, c := 1, 2.0, "three"