Sobes.tech
Junior — Middle

Šta znači nula vrednost za isečak u programskom jeziku?

sobes.tech АИ

Одговор од АИ

U jeziku Go, seč (slice) je dinamički niz koji sadrži referencu na niz, dužinu i kapacitet.

Nultom vrednošću seča je nil. Takav seč ne ukazuje ni na jedan niz, a njegova dužina i kapacitet su nula.

Osobine nultog seča:

  • Može se proveriti pomoću slice == nil.
  • Pokušaj pristupa njegovim elementima će dovesti do panike.
  • Može se koristiti kao prazan seč, na primer, za označavanje odsustva podataka.

Primer:

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

// Može se sigurno inicijalizovati prazan seč:
s = []int{}
fmt.Println(s == nil) // false
fmt.Println(len(s))   // 0

Dakle, nulta vrednost seča je nil, što se razlikuje od praznog seča, ali ne i od nil seča.