Junior — Middle
Di quali componenti è composta una stringa nel linguaggio Go?
sobes.tech AI
Risposta dell'AI
Nel linguaggio Go, una stringa (string) rappresenta una sequenza immutabile di byte, comunemente usata per memorizzare testo codificato in UTF-8. I componenti principali di una stringa in Go sono:
- Byte — la sequenza di byte stessa che contiene i dati.
- Lunghezza — il numero di byte nella stringa.
Internamente, la stringa è implementata come una struttura con un puntatore a un array di byte e una lunghezza. La stringa non contiene un delimitatore o terminatore esplicito.
È importante capire che una stringa non è un array di caratteri (rune), ma una sequenza di byte. Per lavorare con i caratteri Unicode, si utilizza il tipo rune e funzioni del pacchetto unicode/utf8.
Esempio:
s := "Привет"
fmt.Println(len(s)) // Mostra il numero di byte, non di caratteri
runes := []rune(s)
fmt.Println(len(runes)) // Numero di caratteri (rune)