Junior
Bir dizgiyi tam sayıya nasıl dönüştürür ve tersini?
sobes.tech yapay zeka
AI'dan gelen yanıt
Bir dizgiyi tam sayıya dönüştürmek için strconv paketi, Atoi veya ParseInt fonksiyonu kullanılır. Bir tam sayıyı dizgeye dönüştürmek için de strconv paketi, Itoa veya FormatInt fonksiyonu kullanılır.
import "strconv"
func main() {
// Dizgiyi sayıya dönüştürme
strNum := "123"
intNum, err := strconv.Atoi(strNum) // Atoi, int ve error döner
if err != nil {
// hata işleme
}
intNum64, err := strconv.ParseInt("456", 10, 64) // ParseInt, int64, temel ve bit genişliği döner
if err != nil {
// hata işleme
}
// Sayıyı dizgeye dönüştürme
numToStr := 789
strResult := strconv.Itoa(numToStr) // Itoa, string döner
num64ToStr := int64(1011)
strResult64 := strconv.FormatInt(num64ToStr, 10) // FormatInt, string ve temel döner
}
Ana fonksiyonlar:
| Fonksiyon | Açıklama | Dönen değer | Paket |
|---|---|---|---|
Atoi(s string) |
Dizgiyi ondalık tam sayıya dönüştürür. | (int, error) |
strconv |
ParseInt(s string, base int, bitSize int) |
Dizgiyi belirtilen tabanda ve bit genişliğinde tam sayıya dönüştürür. | (int64, error) |
strconv |
Itoa(i int) |
Ondalık tam sayıyı dizgeye dönüştürür. | string |
strconv |
FormatInt(i int64, base int) |
Belirtilen tabanda ve bit genişliğinde tam sayıyı dizgeye dönüştürür. | string |
strconv |
Atoi, ParseInt(s, 10, 0) fonksiyonunun kullanışlı bir kısaltmasıdır ve sonucu int'e dönüştürür. Itoa, FormatInt(int64(i), 10)'nin kısaltmasıdır.
Dizgeyi sayıya dönüştürürken, dizgenin sayısal olmayan karakterler içermemesi veya veri tipinin sınırlarını aşmaması için hataları işlemek önemlidir.