English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Golang 기본 강의

Golang 제어문

Golang 함수 & 메서드

Golang 구조체

Golang 슬라이스 & 배열

Golang 문자열(String)

Golang 포인터

Golang 인터페이스

Golang 동기

Golang 예외(Error)

Golang 기타Miscellaneous

Go 언어 변수

типичные программы используют различные значения, которые могут изменяться в процессе выполнения.

예를 들어,사용자가 입력한 값을 처리하는 프로그램입니다. 사용자가 입력한 값은 다른 사용자가 입력한 값과 다를 수 있습니다. 따라서 이를 위해 변수를 사용해야 합니다. 다른 사용자가 같은 값을 사용하지 않을 수 있기 때문입니다. 사용자가 새로운 값을 입력하면 이 값은 운영 중에 사용되기 위해 컴퓨터의 랜덤 액세스 메모리에 일시적으로 저장될 수 있습니다. 이 메모리에서의 실행은 다른 메모리와 다를 수 있기 때문에 이를 통해 다른 용어로도 불립니다변수。변수는 실행 중에 변경할 수 있는 정보의 대체 표시자입니다. 또한 변수는 저장된 정보를 검색하고 처리할 수 있습니다.

변수이름 규칙:

변수 이름은 반드시 문자나 언더스코어(_)로 시작해야 합니다. 또한 이름에 'a' 문자가 포함될 수 있습니다.-z" 또는 "A"-Z" 또는 숫자 0-9및 문자 "_"를 포함합니다.

Geeks, geeks, _geeks23  //합법적인 변수
123Geeks, 23geeks      // 잘못된 변수

변수 이름은 숫자로 시작하지 않아야 합니다.

234geeks  //잘못된 변수

변수 이름은 대소문자를 구분합니다.

geeks와Geeks는 두 가지 다른 변수입니다

키워드는 변수 이름으로 사용할 수 없습니다.

변수 이름의 길이는 제한이 없지만, 가능한 한 사용하는 것이 좋습니다.4까지15개의 문자의 최적 길이는

변수 선언

Go 언어에서는 두 가지 방식으로 변수를 생성할 수 있습니다:

(1) var 키워드 사용:Go 언어에서는 변수는 특정 타입의var키워드가 생성된, 이 키워드는 변수 이름과 연결되어 초기 값이 부여됩니다.

문법:

var variable_name type = expression

중요 사항:

위의 문법에서는타입(type) 또는=표현식은 제거할 수 있지만, 변수 선언에서 두 가지를 동시에 제거할 수 없습니다.

타입을 제거하면 변수의 타입은 표현식의 값에 의해 초기화됩니다.

//변수 개념
package main
import "fmt"
func main() {
    //변수 선언 및 초기화
    //명시적 타입
    var myvariable1 = 20
    var myvariable2 = "w3codebox"
    var myvariable3 = 34.80
    // 값과 코드 상자를 표시합니다
    // 변수의 타입
    fmt.Printf("myvariable1의 값은 : %d\n", myvariable1)
    fmt.Printf("myvariable1의 타입은 : %T\n", myvariable1)
    fmt.Printf("myvariable2의 값은 : %s\n", myvariable2)
    fmt.Printf("myvariable2의 타입은 : %T\n", myvariable2)
    fmt.Printf("myvariable3의 값은 : %f\n", myvariable3)
    fmt.Printf("myvariable3의 타입은 : %T\n", myvariable3)
}

출력:

myvariable1의 값은 : 20
myvariable1의 타입은 : int
myvariable2의 값은 : w3codebox
myvariable2의 타입은 : string
myvariable3의 값은 : 34.800000
myvariable3의 타입은 : float64

표현식을 제거하면 해당 변수의 타입은 0이며, 숫자는 0, 부울 값은 false, 문자열은""인터페이스와 참조 타입은 nil입니다. 따라서,Go 언어에는 이러한 미초기화된 변수의 개념이 없습니다.

package main
import "fmt"
func main() {
    //변수 선언 및 초기화는 표현식을 사용하지 않습니다
    var myvariable1 int
    var myvariable2 string
    var myvariable3 float64
    //0 값 변수를 표시합니다
    fmt.Printf("myvariable1의 값은 : %d\n", myvariable1)
    fmt.Printf("myvariable2의 값은 : %d\n", myvariable2)
    fmt.Printf("myvariable3의 값은 : %d\n", myvariable3)
}

출력:

myvariable1의 값은 : 0
myvariable2의 값은 : !d(string=)
myvariable3의 값은 : !d(float64=0)

타입을 사용하면 단일 선언에서 같은 타입의 여러 변수를 선언할 수 있습니다.

package main
import "fmt"
func main() {
    // 같은 타입의 여러 변수를 동시에 선언하고 초기화합니다
    var myvariable1, myvariable2, myvariable3 int = 2, 454, 67
    // 변수의 값을 출력합니다
    fmt.Printf("myvariable1의 값은 : %d\n", myvariable1)
    fmt.Printf("myvariable2의 값은 : %d\n", myvariable2)
    fmt.Printf("myvariable3의 값은 : %d\n", myvariable3)
}

출력:

myvariable1의 값은 : 2
myvariable2의 값은 : 454
myvariable3의 값은 : 67

타입을 제거하면 단일 선언에서 다른 타입의 여러 변수를 선언할 수 있습니다. 변수의 타입은 초기화 값에 의해 결정됩니다.

package main
import "fmt"
func main() {
    //다양한 타입의 변수
    //단一行에서 선언 및 초기화
    var myvariable1, myvariable2, myvariable3 = 2, "GFG", 67.56
    // 변수 값과 타입 출력
    fmt.Printf("myvariable1의 값은 : %d\n", myvariable1)
    fmt.Printf("myvariable1의 타입은 : %T\n", myvariable1)
    fmt.Printf("\nmyvariable2의 값은 : %s\n", myvariable2)
    fmt.Printf("myvariable2의 타입은 : %T\n", myvariable2)
    fmt.Printf("\nmyvariable3의 값은 : %f\n", myvariable3)
    fmt.Printf("myvariable3의 타입은 : %T\n", myvariable3)
}

출력:

myvariable1의 값은 : 2
myvariable1의 타입은 : int
myvariable2의 값은 : GFG
myvariable2의 타입은 : string
myvariable3의 값은 : 67.560000
myvariable3의 타입은 : float64

여러 값을 반환하는 호출 함수는 여러 변수를 초기화할 수 있습니다.

예를 들어:

//여기서 os.Open 함수는
//파일의 i 변수와 오류
//j 변수에서
var i, j = os.Open(name)

단축 변수 선언 사용:함수 내에서 선언하고 초기화된 지역 변수를 선언합니다.

문법:

variable_name:= expression

주의:다음과 같이 주의하세요::==끼리 혼동할 수 있습니다.:= 는 선언이며, = 는 할당입니다.

중요 사항:

위의 표현식에서는 변수의 타입이 표현식의 타입에 의해 결정됩니다.

package main
import "fmt"
func main() {
    // 단축 변수 선언 사용
    myvariable1 := 39
    myvariable2 := "oldtoolbag.com"
    myvariable3 := 34.67
    // 변수 값과 타입 출력
    fmt.Printf("myvariable1의 값은 : %d\n", myvariable1)
    fmt.Printf("myvariable1의 타입은 : %T\n", myvariable1)
    fmt.Printf("\nmyvariable2의 값은 : %s\n", myvariable2)
    fmt.Printf("myvariable2의 타입은 : %T\n", myvariable2)
    fmt.Printf("\nmyvariable3의 값은 : %f\n", myvariable3)
    fmt.Printf("myvariable3의 타입은 : %T\n", myvariable3)
}

출력:

myvariable1의 값은 : 39
myvariable1의 타입은 : int
myvariable2의 값은 : oldtoolbag.com
myvariable2의 타입은 : string
myvariable3의 값은 : 34.670000
myvariable3의 타입은 : float64

그들의 간결성과 유연성으로 인해 대부분의 로컬 변수는 단축 변수 선언으로 선언 및 초기화됩니다.

변수의 var 선언은 명시된 타입이 필요하거나 나중에 값을 할당할 때 초기 값이 중요하지 않은 로컬 변수에 사용됩니다.

단축 변수 선언을 사용하면 하나의 선언에서 여러 변수를 선언할 수 있습니다.

package main
import "fmt"
func main() {
    //단一行에서 선언 및 초기화 변수
    //단축 변수 선언 사용
    //동일한 타입의 여러 변수
    myvariable1, myvariable2, myvariable3 := 800, 34.7, 56.9
    // 변수 값과 타입 출력
    fmt.Printf("myvariable1의 값은 : %d\n", myvariable1)
    fmt.Printf("myvariable1의 타입은 : %T\n", myvariable1)
    fmt.Printf("\nmyvariable2의 값은 : %f\n", myvariable2)
    fmt.Printf("myvariable2의 타입은 : %T\n", myvariable2)
    fmt.Printf("\nmyvariable3의 값은 : %f\n", myvariable3)
    fmt.Printf("myvariable3의 타입은 : %T\n", myvariable3)
}

출력:

myvariable1의 값은 : 800
myvariable1의 타입은 : int
myvariable2의 값은 : 34.700000
myvariable2의 타입은 : float64
myvariable3의 값은 : 56.900000
myvariable3의 타입은 : float64

단축 변수 선언에서는 여러 값을 반환하는 호출 함수를 통해 여러 변수를 초기화할 수 있습니다.

//여기서 os.Open 함수는
//파일의 i 변수와 오류
//j 변수에서
i, j := os.Open(name)

단축 변수 선언은 이미 동일한 문법 블록에서 선언된 변수들에 대해만 작동합니다. 외부 블록에서 선언된 변수는 무시됩니다. 다음 예제와 같이, 이 두 변수 중 최소 하나는 새 변수입니다.

package main
import "fmt"
func main() {
    //단축 변수 선언 사용
    //여기서 단축 변수 선언 작업
    //으로 myvar2변수 할당
    //동일한 블록에서 동일한 변수가 존재하기 때문에
    //따라서 myvar2의 값이45을 변경하면100
    myvar1, myvar2 := 39, 45
    myvar3, myvar2 := 45, 100
    //주석 행을 실행하려고 시도하면
    //그런 다음 컴파일러는 오류를 발생시킵니다. 왜냐하면
    //이 변수들은 이미 정의되었습니다. 예를 들어
    // myvar1,myvar2:= 43,47
    // myvar2:= 200
    // 변수 값 출력
    fmt.Printf("myvar1 와 myvar2 의 값 : %d %d\n", myvar1, myvar2)
    fmt.Printf("myvar3 와 myvar2 의 값 : %d %d\n", myvar3, myvar2)
}

출력:

myvar1 와 myvar2 의 값 : 39 100
myvar3 와 myvar2 의 값 : 45 100

단축 변수 선언을 사용하면 하나의 선언에서 여러 타입의 변수를 선언할 수 있습니다. 이 변수들의 타입은 표현식에 의해 결정됩니다.

package main
import "fmt"
func main() {
    //단一行에서 선언 및 초기화
    //단축 변수 선언 사용
    //다양한 타입의 변수
    myvariable1, myvariable2, myvariable3 := 800, "w3codebox 47.56
    // 변수 값과 타입 출력
    fmt.Printf("myvariable1의 값은 : %d\n", myvariable1)
    fmt.Printf("myvariable1의 타입은 : %T\n", myvariable1)
    fmt.Printf("\nmyvariable2의 값은 : %s\n", myvariable2)
    fmt.Printf("myvariable2의 타입은 : %T\n", myvariable2)
    fmt.Printf("\nmyvariable3의 값은 : %f\n", myvariable3)
    fmt.Printf("myvariable3의 타입은 : %T\n", myvariable3)
}

출력:

myvariable1의 값은 : 800
myvariable1의 타입은 : int
myvariable2의 값은 : w3codebox
myvariable2의 타입은 : string
myvariable3의 값은 : 47.560000
myvariable3의 타입은 : float64