Sobes.tech
Junior — Middle

Milyen következményei vannak, ha egy szimbólumot rendelünk egy karakterlánchoz a programkódban?

sobes.tech MI

Válasz az MI-től

Go nyelvben a rune egy adattípus, amely a Unicode kódpontot (int32) reprezentálja. Ha megpróbálod közvetlenül hozzárendelni egy karaktert egy stringhez, például:

var s string
s = 'a' // fordítási hiba

akkor hiba fog keletkezni, mivel az egyes idézőjelek rune-t, a kettős idézőjelek pedig stringet jelölnek.

Ha viszont konvertálod:

s = string('a')

akkor a karakter egy hosszú 1-es stringgé lesz konvertálva.

Következmények:

  • A helytelen karakter hozzárendelés stringhez fordítási hibát okoz.
  • A helyes konverzió egyetlen karakterből álló stringet hoz létre.

Fontos megérteni, hogy a rune numerikus típus, míg a string bájtok sorozata. A rune-ból stringgé történő konverzió létrehozza annak a karakternek a UTF-8 kódolású stringjét.