Sono novizio in golang. Non riesco a trovare alcun documento ufficiale mostra come unire più punture in stringa.
Quello che mi aspettavo:
Input: "chiave", "valore", "key2:", 100
uscita: "Chiave: Valore, key2: 100"Come unire più stringhe e int in una stringa singola in golang?
risposta
Mi piace usa il metodo Sprintf
di fmt per questo tipo di cose. Funziona come normale Printf
in Go o C solo restituisce una stringa. Ecco un esempio;
output := fmt.Sprintf("%s%s%s%d", "key:", "value", ", key2:", 100)
docs andare per fmt.Sprintf
l'ultimo è il numero int. Posso usare% d? –
@RobertYiJiang sì, lo modificherò di fatto. Non ho capito che ho cambiato il tipo di input lì. – evanmcdonnal
È possibile utilizzare strings.Join, che è quasi 3 volte più veloce di fmt.Sprintf. Tuttavia può essere meno leggibile.
output := strings.Join([]string{"key:", "value", ", key2:", strconv.Itoa(100)}, "")
Vedi https://play.golang.org/p/AqiLz3oRVq
strings.Join vs fmt.Sprintf
BenchmarkFmt-4 2000000 685 ns/op
BenchmarkJoins-4 5000000 244 ns/op
Buffer
Se avete bisogno di unire un sacco di corde, mi piacerebbe prendere in considerazione utilizzando un buffer piuttosto che le soluzioni sopra menzionate.
Bene, se usi strconv.Itoa puoi anche concatenare le stringhe con + –
@ColinPitrat A causa di un problema sul compilatore go, strings.Join di 2 o 3 elementi usa +, ma sopra di esso crea una slice slice per una concatenazione più efficiente. Se hai più di due elementi da concatenare, ti consiglio vivamente di usare strings.Join. – basgys
- 1. Impossibile assegnare una stringa con virgoletta singola in golang
- 2. Unire una serie di stringhe in Apex
- 3. Come unire una fetta in una stringa?
- 4. come rendere più stringhe di linea a stringa singola riga?
- 5. Come convertire int in bigint in golang?
- 6. Unire più stringhe se non sono vuote in Python
- 7. Come posso convertire da int a hex in Golang?
- 8. CONCAT più sezioni in golang
- 9. Come dividere una stringa e assegnarla alle variabili in Golang?
- 10. Come unire il file exe e msi in configurazione singola?
- 11. Convertire una lista di stringhe ad una singola stringa
- 12. converte l'interfaccia {} in int in Golang
- 13. Come convertire un int in una stringa?
- 14. Golang: problemi in sostituzione di una nuova stringa in una stringa da un file di testo
- 15. Come posso unire più file Python Python in una singola libreria collegata?
- 16. Come concatenare le stringhe da una sottoquery in una singola riga in mysql?
- 17. Aggiunta di più stringhe a una stringa
- 18. Convertire una stringa in int in Rust?
- 19. Come posso convertire una stringa in un int in Python?
- 20. Unire più file PDF in una singola pagina PDF - posizionato in join utilizzando PHP
- 21. Come unire un array associativo in una stringa
- 22. Unisci più espressioni regolari a una singola
- 23. qual è la differenza tra [] stringa e ... stringa in golang?
- 24. Come sfuggire a una singola virgoletta in una stringa a virgoletta singola in Bash?
- 25. Combina più stringhe di errori
- 26. Modo corretto in C# per combinare un numero arbitrario di stringhe in una singola stringa
- 27. PL/SQL, come evitare una virgoletta singola in una stringa?
- 28. Come rimuovere una virgoletta singola da una stringa in R?
- 29. come posso usare gzip su una stringa in golang?
- 30. Stringhe e int, implicite ed esplicite
Possibile duplicato di [Golang: formatta una stringa senza stampare?] (Http://stackoverflow.com/questions/11123865/golang-format-a-string-without-printing) – icza