суббота, 4 апреля 2020 г.

Преобразования между float и string в Golang

Конвертировать string (строку) в float

Используйте функцию strconv.ParseFloat для анализа строки как числа с плавающей запятой с точностью, указанной в bitSize: 32 для float32 или 64 для float64.

func ParseFloat(s string, bitSize int) (float64, error)

Когда bitSize равен 32, результат все еще имеет тип float64, но он будет преобразован в float32 без изменения его значения.

f := "3.14159265"
if s, err := strconv.ParseFloat(f, 32); err == nil {
    fmt.Println(s) // 3.1415927410125732
}
if s, err := strconv.ParseFloat(f, 64); err == nil {
    fmt.Println(s) // 3.14159265
}

Конвертировать float в string (строку)

Используйте метод fmt.Sprintf для форматирования числа с плавающей запятой в виде строки.

s := fmt.Sprintf("%f", 123.456) // s == "123.456000"

Форматирование Описание Глагол
1.234560e+02 Научная запись %e
123.456000 Десятичная дробь, без экспоненты %f
123.46 Десятичная дробь, точность 2 %.2f
␣␣123.46 Ширина 8, точность 2 %8.2f
123.456 Экспонент по мере необходимости, только необходимые цифры %g

Читайте также:


Комментариев нет:

Отправить комментарий