Sobes.tech
Junior

Kuidas teisendada string täisarvuks ja vastupidi?

sobes.tech AI

Vastus AI-lt

Stringi muutmine täisarvuks kasutab paketti strconv, funktsiooni Atoi või ParseInt. Täisarvu stringiks muutmine toimub samuti paketi strconv kaudu, funktsiooni Itoa või FormatInt abil.

import "strconv"

func main() {
	// Stringi muutmine arvuks
	strNum := "123"
	intNum, err := strconv.Atoi(strNum) // Atoi tagastab int ja error
	if err != nil {
		// vea töötlemine
	}

	intNum64, err := strconv.ParseInt("456", 10, 64) // ParseInt tagastab int64, alus, bitisuurus
	if err != nil {
		// vea töötlemine
	}

	// Arvu muutmine stringiks
	numToStr := 789
	strResult := strconv.Itoa(numToStr) // Itoa tagastab string

	num64ToStr := int64(1011)
	strResult64 := strconv.FormatInt(num64ToStr, 10) // FormatInt tagastab string, alus
}

Peamised funktsioonid:

Funktsioon Kirjeldus Tagastatav väärtus Pakett
Atoi(s string) Muudab stringi kümnendarvuks täisarvuks. (int, error) strconv
ParseInt(s string, base int, bitSize int) Muudab stringi antud alusel ja bittide suurusega täisarvuks. (int64, error) strconv
Itoa(i int) Muudab kümnendarvulise täisarvu stringiks. string strconv
FormatInt(i int64, base int) Muudab täisarvu antud alusel stringiks. string strconv

Atoi on mugav lühivorm ParseInt(s, 10, 0) tulemuse jaoks ja konverteerib tulemuse int-ks. Itoa on lühivorm FormatInt(int64(i), 10) jaoks.

Stringi muutmisel arvuks on oluline käsitleda vigu, kuna string võib sisaldada mittearvulisi märke või ületada andmetüübi suuruse.