it-swarm.com.de

Was ist die Null für String?

func NewKey(c appengine.Context, kind, stringID string, intID int64, parent *Key) *Key

Die Dokumentation sagt:

NewKey erstellt einen neuen Schlüssel. Art darf nicht leer sein. Entweder eines oder beide von stringID und intID müssen null sein. Wenn beide Null sind, ist der Schlüssel zurückgegeben ist unvollständig. Elternteil muss entweder ein vollständiger Schlüssel oder Null sein.

Was ist die Null für String?

Ich habe 0 und nil ausprobiert und es wurden folgende Fehler angezeigt:

cannot use nil as type string in function argument
114
DeanSinaean

Das ist "":

var s string
fmt.Println(s=="") // prints "true"

Eine Zeichenfolge kann nicht null sein (aber ein *string kann). 

Sie können einfach testen

if stringId=="" {

Um eine Nullzeichenfolge in stringID zu übergeben, verwenden Sie

k := NewKey(c, "kind", "", 0, p)

Von der Spezifikation :

Wenn Speicher zugewiesen wird, um einen Wert zu speichern, entweder über eine Deklaration oder Aufruf von make oder new und keine explizite Initialisierung bereitgestellt wird, erhält der Speicher eine Standardinitialisierung. Jeder Das Element eines solchen Werts wird für seinen Typ auf Null gesetzt: false für Booleans, 0 für Ganzzahlen, 0,0 für Floats, "" für Zeichenfolgen und Null für Zeiger, Funktionen, Schnittstellen, Schnitte, Kanäle und Karten.

205
Denys Séguret

in diesem Fall eine leere Zeichenfolge oder Sie können NewIncompleteKey () verwenden

0
Noypi Gilas