Sobes.tech
Junior

Как да преобразуваме низ в цяло число и обратно?

sobes.tech AI

Отговор от AI

За преобразуване на низ в цяло число се използва пакетът strconv, функцията Atoi или ParseInt. За преобразуване на цяло число в низ също се използва пакетът strconv, функцията Itoa или FormatInt.

import "strconv"

func main() {
	// Преобразуване на низ в число
	strNum := "123"
	intNum, err := strconv.Atoi(strNum) // Atoi връща int и error
	if err != nil {
		// обработка на грешка
	}

	intNum64, err := strconv.ParseInt("456", 10, 64) // ParseInt връща int64, основа, битов размер
	if err != nil {
		// обработка на грешка
	}

	// Преобразуване на число в низ
	numToStr := 789
	strResult := strconv.Itoa(numToStr) // Itoa връща string

	num64ToStr := int64(1011)
	strResult64 := strconv.FormatInt(num64ToStr, 10) // FormatInt връща string, основа
}

Основни функции:

Функция Описание Връщана стойност Пакет
Atoi(s string) Преобразува низ в десетично цяло число. (int, error) strconv
ParseInt(s string, base int, bitSize int) Преобразува низ в цяло число с посочена основа и битов размер. (int64, error) strconv
Itoa(i int) Преобразува десетично цяло число в низ. string strconv
FormatInt(i int64, base int) Преобразува цяло число с посочен битов размер в низ с посочена основа. string strconv

Atoi е удобна съкратена форма за ParseInt(s, 10, 0) с резултата, преобразуван в int. Itoa е съкратена форма за FormatInt(int64(i), 10).

При преобразуване на низ в число е важно да се обработват грешки, тъй като низът може да съдържа нечислови символи или да превиши размера на типа данни.