• nil
    var ss []student
  • length is zero
    dd := []student{}
  • ff[0] is {"",0}, length is 1
    ff := []student{{}}
package main

import (
	"fmt"
)

func main() {
  // ss: ss is nil
	var ss []student
  // dd's length is zero
	dd := []student{}
  // ff[0] is {"",0}
  ff := []student{{}}
  
	if ss == nil {
		fmt.Printf("ss is nil\n")
	} else {
		fmt.Printf("ss is not nil\n")
	}

	if dd == nil {
		fmt.Printf("dd is nil\n")
	} else if len(dd) == 0 {
		fmt.Printf("dd's length is zero\n")
	} else {
		fmt.Printf("dd[0] is %v, length is %d\n", dd[0], len(dd))
	}
  
  if ff == nil {
		fmt.Printf("ff is nil\n")
	} else if len(ff) == 0 {
		fmt.Printf("ff's length is zero\n")
	} else {
		fmt.Printf("ff[0] is %v, length is %d\n", ff[0], len(ff))
	}
}

type student struct {
	name  string
	class int
}

➜  go run nil_slice/main.go
ss is nil
dd's length is zero
ff[0] is { 0}, length is 1

相关文章:

  • 2022-02-28
  • 2022-12-23
  • 2022-12-23
  • 2021-09-30
  • 2021-07-27
  • 2021-12-13
  • 2021-12-24
  • 2022-02-21
猜你喜欢
  • 2021-12-25
  • 2021-09-18
  • 2022-12-23
  • 2021-11-08
  • 2022-02-08
  • 2021-11-07
  • 2021-04-04
相关资源
相似解决方案