๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Data Base/Go

[Golang] Zero values , Nil slices

by ์ฝ”๋”ฉํ•˜๋Š” ๋ถ•์–ด 2021. 11. 1.
๋ฐ˜์‘ํ˜•

Zero values 

๋ช…์‹œ์ ์ธ ์ดˆ๊นƒ๊ฐ’ ์—†์ด ์„ ์–ธ๋œ ๋ณ€์ˆ˜๋Š” ๊ทธ๊ฒƒ์˜ zero value ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.

 

zero value ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  • ์ˆซ์ž Type์—๋Š” 0
  • Boolean Type์—๋Š” False
  • String์—๋Š” "" (๋นˆ ๋ฌธ์ž์—ด)

 

 

 

Nil slices (nil ์Šฌ๋ผ์ด์Šค)

Slice์˜ zero value๋Š” nil ์ด๋‹ค.

nil Slice์˜ ๊ธธ์ด(length)์™€ ์šฉ๋Ÿ‰(capacity)์€ 0์ด๋ฉฐ, ๊ธฐ๋ณธ ๋ฐฐ์—ด์„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š๋‹ค.

 

 

์˜ˆ์ œ

package main

import "fmt"

func main() {
	var s []int
	fmt.Println(s, len(s), cap(s))
	if s == nil {
		fmt.Println("nil!")
	}
}

 

 

 

[์ฐธ๊ณ  ์‚ฌ์ดํŠธ - a Tour of Go]

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€