Jak przekonwertować ciąg na typ liczby całkowitej w Golang?

Jak przekonwertować ciąg na typ liczby całkowitej w Golang?

Język programowania Go jest znany ze swojej prostoty, współbieżności i wydajności, co czyni go popularnym wyborem wśród programistów. Jednym z powszechnych zadań programistycznych, z którymi często napotykają programiści, jest przekształcenie łańcucha na typ liczby całkowitej. Może to być szczególnie przydatne podczas pracy z wejściem użytkownika, operacjami wejściowymi/wyjściowymi plików i innymi zadaniami manipulacji danymi.

Ten samouczek zbada, w jaki sposób możesz przekonwertować ciąg na typ liczby całkowitej Golang.

Konwertuj ciąg na typ liczby całkowitej w Golang

Istnieją dwie metody przekształcania łańcucha na typ liczby całkowitej Golang:

  • Za pomocą STRCONV.Funkcja ATOI
  • Za pomocą STRCONV.Funkcja parseint

Metoda 1: Za pomocą STRCONV.Funkcja ATOI

W Golang, Istnieje wbudowana funkcja o nazwie strconv.Atoi To pomaga przekonwertować ciąg na liczbę całkowitą. Ta funkcja działa, przyjmując ciąg jako wejście i zwracając liczbę całkowitą na wyjściu. Jeśli ciąg nie można przekonwertować na liczbę całkowitą, zwróci błąd.

Poniżej znajduje się składnia do użycia strconv.Atoi w Golang.

i, err: = strconv.Atoi (str)

Tutaj, I jest zmienną liczb całkowitą, która przechowuje konwertowaną wartość z ciągu na liczbę całkowitą, błądzić jest zmienną błędu, która przechowuje błędy podczas procesu konwersji. str to zmienna ciągów, którą funkcja musi przekonwertować na liczbę całkowitą.

Poniższy przykład ilustruje użycie strconv.Funkcja ATOI w Golang.

Pakiet Main
import (
„FMT”
„strconv”
)
func main ()
str: = „498”
num, err: = strconv.Atoi (str)
Jeśli err != zero
fmt.Println („błąd:”, err)

fmt.Printf („oryginalny ciąg: %s, konwertowana liczba całkowita: %d \ n”, str, num)

W powyższym kodzie zmienna STR utrzymuje wartość ciągu „498”I strconv.Atoi Następnie stosuje się funkcję do konwersji ciągu na liczbę całkowitą. num Zmienna zawiera przekonwertowaną wartość całkowitą, podczas gdy błądzić Zmienna zawiera każdy błąd, który mógł wystąpić podczas konwersji. W przypadku udanej konwersji, num Zmienna zawiera wartość całkowitą ciągu „498" i wtedy fmt.Printf Funkcja drukuje zarówno wartości ciągów, jak i liczb całkowitych na konsoli.

Wyjście

Metoda 2: Za pomocą STRCONV.Funkcja parseint

Jest inna funkcja w Golang zwany strconv.Parseint można również użyć do konwersji ciągu na typ liczb całkowitych. Składnia do użycia tej funkcji podano poniżej:

FUNC PARSEINT (STR String, Base Int, Bitsize int)

Tutaj str Oznacza ciąg, który ma zostać przekonwertowany, baza definiuje podstawę numeryczną (od 2 do 36), w której liczba jest reprezentowana w ciągu. Dla podstawy 0 przedrostek ciągu jest określany przez 0x dla heksadecimal, 0 dla ósemek i 0b dla binarnego. Jeśli nie ma prefiksu, zakłada, że ​​podstawa wynosi 10. Bitsize to wielkość bitu powstałej liczby całkowitej (albo 0, 8, 16, 32 lub 64).

Przykład łańcucha do konwersji liczb całkowitych za pomocą STRCONV.Parseint jest wspomniany poniżej:

Pakiet Main
import (
„FMT”
„strconv”
)
func main ()
str: = „498”
i, err: = strconv.Parseint (STR, 10, 32)
Jeśli err != zero
fmt.Println („błąd:”, err)
w przeciwnym razie
fmt.Println („konwertowana liczba całkowita:”, i)

Powyższy kod używa ciągu „498”I przekształca go w liczbę całkowitą za pomocą STRCONV.Parseint, z bazą 10 i nieco wielkości 32. Powstała liczba całkowita jest następnie drukowana do konsoli, a jeśli błąd wystąpi podczas konwersji, komunikat o błędzie jest wydrukowany.

Wyjście

Wniosek

Przekształcenie łańcucha na liczbę całkowitą jest powszechnym zadaniem w różnych językach programowania, w tym Golang. Golang zapewnia dwie wbudowane funkcje o nazwie strconv.ATOI i STRCONV.Parseint Aby wykonać to zadanie. strconv.Atoi Funkcja jest łatwa w użyciu i zwraca błąd, jeśli nie przekonwertuje łańcucha na liczbę całkowitą. Druga funkcja, strconv.Parseint Zapewnia większą elastyczność, umożliwiając użytkownikowi określenie bazy numerycznej i rozmiaru bitów. To zależy od wyboru użytkownika; z której metody będą używać do konwersji ciągów na typ liczby całkowitej Golang.