Es vermeidet, alle Variablen für die Rückgabewerte deklarieren zu müssen.
Es heißt blank identifier.
Wie in:
_, y, _ := coord(p) // coord() returns three values; only interested in y coordinate
(die other '_
' use case is for import)
Da es den Rückgabewert verwirft, ist es hilfreich, wenn Sie nur eine der zurückgegebenen Werte überprüfen möchten, wie in „How to test key existence in a map?“ gezeigt in "Effective Go, map":
_, present := timeZone[tz]
für Präsenz in der Karte Um zu testen, mit Wenn Sie sich über den tatsächlichen Wert Gedanken machen, können Sie die leere Kennung verwenden, einen einfachen Unterstrich (_
).
Die leere Kennung kann mit einem beliebigen Wert eines beliebigen Typs zugewiesen oder deklariert werden, wobei der Wert harmlos verworfen wird.
Um das Vorhandensein in einer Karte zu testen, verwenden Sie den leeren Bezeichner anstelle der üblichen Variablen für den Wert.
Wie Jsor fügt in the comments:
"allgemein anerkannten Standard" ist die Mitgliedschaft Testvariablen "ok" nennen (das gleiche für die Überprüfung, ob ein Kanal Lese gültig war oder nicht)
Damit können Sie es mit Test kombinieren:
Sie würden es auch in Schleife finden:
Wenn Sie nur das zweite Element im Bereich (der Wert) benötigen, verwenden Sie die leere Kennung, einen Unterstrich, die erste zu verwerfen:
sum := 0
for _, value := range array {
sum += value
}
Für zukünftige Sprache Fragen haben, bitte einen Blick auf die [spec] (http: // golang. org/ref/spec) zuerst. Es sollte alle Ihre Fragen beantworten. – fuz
Als Kommentar: 'prs' steht wahrscheinlich für" Gegenwart ". Der Code in Ihrem Beispiel prüft, ob ein Eintrag für "example" in der Map "m" vorhanden oder nicht vorhanden ist. – dyoo
@FUZxxl Ja, ich habe mich vorher schon einmal angesehen, aber da ich den Namen des Features nicht kannte, habe ich es nicht gefunden. Auch finde ich die offiziellen Spezifikationen für Programmiersprachen, die nicht sehr pädagogisch sind und eher mit dem Beispiel lernen. – Kansuler