Go 또는 Golang에서 조각의 비어 있거나 0인 값은 무엇입니까?

5723 단어 go
Originally posted here!

go 또는 golang에서 슬라이스의 비어 있거나 0인 값은 nil 입니다. 이 슬라이스의 용량과 길이는 0 입니다.

TL; DR




package main

import "fmt"

func main() {
    // declare an int slice
    var mySlice []int

    // check if the mySlice zero value is
    // `nil` using an if conditional statement
    if mySlice == nil {
        fmt.Println("The zero value is nil") // The zero value is nil ✅ This will be printed upon execution.

        // check the capacity and the length of the `mySlice` slice
        fmt.Println(cap(mySlice), len(mySlice)) // 0 0 ✅
    }
}


예를 들어 먼저 다음과 같이 int 슬라이스를 선언해 보겠습니다.

package main

func main(){
    // declare an int slice
    var mySlice []int
}


이제 mySlice 슬라이스의 초기 값 또는 0 값인지 확인하기 위해 간단한 if 조건부 검사를 사용하여 슬라이스가 nil 값과 같은지 확인합니다.

다음과 같이 할 수 있습니다.

package main

import "fmt"

func main(){
    // declare an int slice
    var mySlice []int

    // check if the mySlice zero value is
    // `nil` using an if conditional statement
    if mySlice == nil {
        fmt.Println("The zero value is nil") // The zero value is nil ✅ This will be printed upon execution.
    }
}


보시다시피 if 조건이 true가 되어 mySlice 슬라이스의 0 값이 nil임을 증명합니다.

이제 각각 mySlice cap() 방법을 사용하여 len() 슬라이스의 용량과 길이를 인쇄해 보겠습니다.

다음과 같이 할 수 있습니다.

package main

import "fmt"

func main() {
    // declare an int slice
    var mySlice []int

    // check if the mySlice zero value is
    // `nil` using an if conditional statement
    if mySlice == nil {
        fmt.Println("The zero value is nil") // The zero value is nil ✅ This will be printed upon execution.

        // check the capacity and the length of the `mySlice` slice
        fmt.Println(cap(mySlice), len(mySlice)) // 0 0 ✅
    }
}


보시다시피 슬라이스의 0 값은 nil이고 슬라이스의 용량과 길이는 0입니다.

The Go Playground에 있는 위의 코드를 참조하십시오.

그게 다야 😃.

이 정보가 유용하다고 생각되면 자유롭게 공유하세요 😃.

좋은 웹페이지 즐겨찾기