Sobes.tech
Junior — Middle

Mit jelent a null érték egy szelet esetében egy programozási nyelvben?

sobes.tech MI

Válasz az MI-től

A Go nyelvben a szelet (slice) egy dinamikus tömb, amely egy hivatkozást tartalmaz egy tömbre, valamint a hosszát és kapacitását.

A szelet nullértéke a nil. Egy ilyen szelet nem mutat semmilyen tömbre, hosszúsága és kapacitása nulla.

A null szelet jellemzői:

  • Ellenőrizhető a slice == nil segítségével.
  • A szelet elemeinek elérésére tett kísérlet pánikot eredményez.
  • Üres szeletként használható, például az adatok hiányának jelzésére.

Példa:

var s []int // s == nil
fmt.Println(s == nil) // true
fmt.Println(len(s))   // 0
fmt.Println(cap(s))   // 0

// Biztonságosan inicializálhatunk egy üres szeletet:
s = []int{}
fmt.Println(s == nil) // false
fmt.Println(len(s))   // 0

Így a null értékű szelet a nil, ami különbözik egy üres szelettől, de nem a nil szelettől.