Ce face Int.toString
42.toString() returnează textul "42", pe care poți aplica funcții de text precum padStart, length sau reversed. Cu argumentul radix obții numărul scris în altă bază: 255.toString(2) este "11111111", iar 255.toString(16) este "ff". Inversul este "ff".toInt(16).
65.toChar() returnează caracterul cu codul Unicode 65, adică 'A'. Este inversul lui 'A'.code. Pentru alte tipuri numerice decât Int, toChar() este depreciat; convertește întâi la Int sau folosește Char(cod).
Parametri
| Parametru | Descriere |
|---|---|
radix |
Baza în care se scrie numărul (2–36). Implicit 10. |
Ce returnează
toString: un String. toChar: un Char.
Exemple
Exemplul 1: Numere în diferite baze
Același număr scris în baza 10, 2, 8 și 16.
fun main() {
val n = 2025
println(n.toString())
println(n.toString(2))
println(n.toString(8))
println(n.toString(16))
println("7e9".toInt(16))
}
Rezultat
2025
11111101001
3751
7e9
2025
Exemplul 2: Cifrele unui număr prin text
Transformăm numărul în text ca să-i aflăm numărul de cifre și să-l completăm cu zerouri.
fun main() {
val cod = 427
val text = cod.toString()
println("Cifre: ${text.length}")
println("Cod complet: ${text.padStart(6, '0')}")
println("Prima cifră: ${text.first()}")
}
Rezultat
Cifre: 3
Cod complet: 000427
Prima cifră: 4
Exemplul 3: Litere din coduri cu toChar
Codurile 65–70 sunt literele A–F; adunând 32 obținem literele mici.
fun main() {
val litere = (65..70).map { it.toChar() }
println(litere)
println((65 + 32).toChar())
println(('A'.code + 2).toChar())
}
Rezultat
[A, B, C, D, E, F]
a
C
Greșeli frecvente
- Aștepți ca
7.toChar()să dea caracterul'7'. Dă caracterul cu codul 7 (un caracter de control); pentru cifră folosește7.digitToChar()sau'0' + 7. - Scrii
"" + numarpentru conversie. Merge, darnumar.toString()sau un template"$numar"sunt mai clare.
Comenzi înrudite
String.toInt: Transformă un text în număr întreg; toInt aruncă excepție la text invalid, toIntOrNull returnează null.Char.digitToInt: digitToInt transformă caracterul ‘7’ în numărul 7; code dă codul Unicode al caracterului (‘A’.code este 65).String.padStart: Completează textul la o lungime dată, adăugând un caracter la început (padStart) sau la final (padEnd).Int.countOneBits: Numără câți biți de 1 are un număr în scrierea binară (de exemplu 7 = 111 are 3).