Ich rufe eine Funktion auf, die ein leeres Array zurückgibt, wenn keine Werte vorhanden sind.Wie überprüfe ich nach einer leeren Scheibe?
Wenn ich das tue es nicht funktioniert:
if r == [] {
fmt.Println("No return value")
}
Die Arbeit rund um Ich verwende ist:
var a [0]int
if r == a {
fmt.Println("No return value")
}
Aber die Deklaration einer Variablen nur der Rückgabewert zu überprüfen, nicht der Fall ist scheint richtig zu sein. Was ist der bessere Weg, dies zu tun?
Go ist kein Javascript! Lesen Sie die Grundlagen: https://golang.org/doc/effective_go.html –
Mehr Dinge - zuerst - Array ist kein Stück. Array ist ein Typ, der eine feste Anzahl von Elementen hat, daher ist die Frage nur für Slice sinnvoll. Zweitens - es wird nicht funktionieren, wenn Sie diese Scheiben initialisieren. Drittens - und was ist, wenn len (a) == 0? – lofcek
Kompiliert Ihre Problemumgehung? Ich kann nicht sehen, wie es wäre, wenn "r" auch vom Typ "[0] int" ist, aber in diesem Fall würden die zwei (leeren) Arrays immer gleich sein. –