Sobes.tech
Junior — Middle

Vai var uzskatīt, ka tukša kolekcija ir vienāda ar Nil vērtību programmēšanā?

sobes.tech AI

Atbilde no AI

Go valodā tukša kolekcija (piemēram, tukšs sēklis vai karte) nav vienāda ar nil. nil nozīmē vērtības vai inicializācijas neesamību, kamēr tukša kolekcija ir inicializēts objekts ar nulles elementu skaitu.

Piemērs:

var s []int       // s == nil
s = []int{}        // s != nil, bet len(s) == 0

fmt.Println(s == nil)       // pareizi pirmajā gadījumā
fmt.Println(len(s) == 0)    // pareizi abos gadījumos

Tādēļ tukšu kolekciju nevar uzskatīt par vienādu ar nil, pat ja tā nesatur elementus.