Junior — Middle
Ποια αποτελέσματα λαμβάνονται κατά την διαδοχική διαδρομή των χαρακτήρων μιας συμβολοσειράς;
sobes.tech AI
Απάντηση από AI
Κατά την διαδοχική περιήγηση των χαρακτήρων μιας συμβολοσειράς σε Go (Golang), συνήθως χρησιμοποιείται ένας βρόχος for range, ο οποίος διατρέχει τις runes (σημεία κώδικα Unicode).
Το αποτέλεσμα αυτής της επανάληψης είναι η λήψη κάθε χαρακτήρα της συμβολοσειράς ως τιμή τύπου rune και η θέση του (δείκτης σε bytes).
Παράδειγμα:
package main
import (
"fmt"
)
func main() {
s := "Привет"
for i, r := range s {
fmt.Printf("Δείκτης: %d, Χαρακτήρας: %c\n", i, r)
}
}
Η έξοδος θα περιέχει τον δείκτη (σε bytes) και τον αντίστοιχο χαρακτήρα. Αυτό είναι σημαντικό, καθώς σε UTF-8, οι χαρακτήρες μπορεί να καταλαμβάνουν διαφορετικό αριθμό bytes.
Έτσι, η διαδοχική περιήγηση επιτρέπει την σωστή εργασία με Unicode strings, λαμβάνοντας κάθε χαρακτήρα ολόκληρο, και όχι μόνο μεμονωμένα bytes.