El paquete slices en Go
Helpers genéricos que antes se escribían a mano en cada proyecto.
func sliceHelpers() []string {
langs := []string{"rust", "go", "python", "sql"}
slices.Sort(langs)
position, found := slices.BinarySearch(langs, "python")
reversed := slices.Clone(langs)
slices.Reverse(reversed)
return []string{
fmt.Sprint(langs),
fmt.Sprint(slices.Contains(langs, "go"), slices.Index(langs, "sql")),
fmt.Sprint(position, found),
fmt.Sprint(reversed, slices.Max(langs)),
fmt.Sprint(slices.Equal(langs, reversed)),
}
}
Cómo funciona
Contains,IndexySortcubren los casos comunes.BinarySearchdevuelve la posición y si se encontró.DeleteeInsertdevuelven una nueva cabecera de slice.
Palabras clave y builtins usados aquí
funcreturnstring
El intento, en números
- Líneas
- 16
- Caracteres a escribir
- 436
- Tokens
- 128
- Ritmo de tres estrellas
- 105 tpm
Al ritmo de tres estrellas de 105 tokens por minuto, este intento toma unos 73 segundos.
Paso 1 de 5 en Colecciones y texto; paso 9 de 26 en Biblioteca estándar y estructura del proyecto.