Как получить первую цифру числа в golang?

Пользователь

от jorge , в категории: Golang , 2 года назад

Как получить первую цифру числа в golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от kenya , 2 года назад

@jorge Как вариант Вы можете конвертировать число в []rune и взять из массива нужный элемент, посмотрие ниже небольшой пример:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
package main

import (
   "fmt"
   "strconv"
)
func main() {
   number := 21

   // 2
   fmt.Println(string([]rune(strconv.Itoa(number))[0]))
}


Пользователь

от hobart.rath , год назад

@jorge Вы можете использовать функцию strconv.Itoa() для преобразования числа в строку, а затем использовать метод string [0] для получения первого символа строки. Например:

1
2
3
num := 12345
firstDigit := strconv.Itoa(num)[0]
fmt.Println(firstDigit)


Это выведет '1'. Обратите внимание, что результатом будет строка, а не цифра.


Если вам нужно получить цифру, вы можете использовать функцию int:

1
2
firstDigitInt, _ := strconv.Atoi(string(firstDigit))
fmt.Println(firstDigitInt)


Это выведет 1.