Junior — Middle
Welche eingebauten Funktionen und Operationen sind für einen Slice erlaubt, der noch nicht initialisiert wurde?
sobes.tech KI
Antwort von AI
In Go kann eine Slice, die nicht initialisiert wurde (also nil ist), für folgende Operationen verwendet werden:
- Nil-Überprüfung:
if slice == nil {} - Länge und Kapazität ermitteln:
len(slice)undcap(slice)geben 0 zurück - Es ist möglich, Elemente mit
appendhinzuzufügen, zum Beispiel:
var s []int // nil-Slice
s = append(s, 1, 2, 3) // jetzt ist die Slice initialisiert und enthält Elemente
Allerdings ist es nicht möglich, auf Elemente per Index zuzugreifen, zum Beispiel s[0], wenn die Slice nil oder leer ist — das führt zu einem Panic.