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)-ի։

Տեքստը թվի վերածելու ժամանակ կարևոր է սխալների կառավարումը, քանի որ տեքստը կարող է պարունակել ոչ թվային նշաններ կամ գերազանցել տվյալների տիպի չափը։