Il serait pratique de pouvoir dire quelque chose comme :
for _, element := reverse range mySlice {
...
}
Il serait pratique de pouvoir dire quelque chose comme :
for _, element := reverse range mySlice {
...
}
Vous pouvez aussi le faire :
s := []int{5, 4, 3, 2, 1}
for i := range s {
fmt.Println(s[len(s)-1-i]) // Suggestion: do `last := len(s)-1` before the loop
}
Sortie :
1
2
3
4
5
Également ici : http://play.golang.org/p/l7Z69TV7Vl
On pourrait utiliser un canal pour inverser une liste dans une fonction sans la dupliquer. Cela rend le code plus agréable à mon sens.
package main
import (
"fmt"
)
func reverse(lst []string) chan string {
ret := make(chan string)
go func() {
for i, _ := range lst {
ret <- lst[len(lst)-1-i]
}
close(ret)
}()
return ret
}
func main() {
elms := []string{"a", "b", "c", "d"}
for e := range reverse(elms) {
fmt.Println(e)
}
}
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.