Es gibt viele Fälle nil in golang verwendet wird, wie folgt aus:Was bedeutet Nil in Golang?
func (u *URL) Parse(ref string) (*URL, error) {
refurl, err := Parse(ref)
if err != nil {
return nil, err
}
return u.ResolveReference(refurl), nil
}
aber wir können es nicht wie diesen:
var str string //or var str int
str = nil
der golang Compiler einen can't use nil as type string in assignment
Fehler werfen.
Sieht aus wie die nil
kann nur verwendet werden, um Zeiger der Struktur und Schnittstelle, dann wie heißt es? und Wenn wir es verwenden, um mit dem anderen Objekt zu vergleichen, wie sie vergleichen, das bedeutet, wie Golang ein Objekt zu beurteilen ist Null?
EDIT: Zum Beispiel, wenn eine Schnittstelle Null ist, muss zugleich sein, seine Art und Wert gleich Null. Wie Golang es schaffen?
Sie müssen Go-Typen und die verschiedenen Werte verstehen, die ein Objekt jedes Typs haben kann. Alle Details darüber, welche Dinge null sind, können nil zugewiesen werden, vergleichbar mit null und so werden in https://golang.org/ref/spec erklärt, das kurz genug ist, um auf einmal zu lesen und klar genug, um es zu verstehen. – Volker
Leere Zeichenfolge in Go ist "".Um zu testen, ob ein String Wert hat, einfach "str ==" "' – LibertyLocked