Evita di dover dichiarare tutte le variabili per i valori di ritorno.
Si chiama identificatore del vuoto .
Come in:
_, y, _ := coord(p) // coord() returns three values; only interested in y coordinate
(l' altro ' _
' caso d'uso è per l'importazione )
Poiché ignora il valore restituito, è utile quando si desidera controllare solo uno dei valori restituiti, come in " Come testare l'esistenza di una chiave in una mappa? " Mostrato in " Effective Go, map ":
_, present := timeZone[tz]
Per verificare la presenza nella mappa senza preoccuparsi del valore effettivo, è possibile utilizzare l'identificatore vuoto, un semplice trattino basso ( _
).
L'identificatore del vuoto può essere assegnato o dichiarato con qualsiasi valore di qualsiasi tipo, con il valore scartato in modo innocuo.
Per verificare la presenza in una mappa, utilizzare l'identificatore vuoto al posto della normale variabile per il valore.
Come aggiunge Jsor nei commenti :
"standard generalmente accettato" è chiamare "ok" le variabili di test di appartenenza (lo stesso per controllare se un canale letto era valido o meno)
Ciò ti consente di combinarlo con il test:
if _, err := os.Stat(path); os.IsNotExist(err) {
fmt.Printf("%s does not exist\n", path)
}
Lo troverai anche in loop:
Se hai bisogno solo del secondo elemento nell'intervallo (il valore), utilizza l'identificatore vuoto, un trattino basso, per eliminare il primo:
sum := 0
for _, value := range array {
sum += value
}