Ответ 1
Просто используйте int()
:
x := float32(3.1)
fmt.Println(int(x))
Что создает 3
по мере необходимости, без необходимости использовать преобразования строк и т.п.
Я попробовал несколько способов, чтобы применить float к int, я хочу, чтобы обрезать float, поэтому я получаю только целую часть. Я использую
x := float32(3.1)
y,_ := strconv.Atoi((strconv.Ftoa32(x,'f',0))) //y becomes 3
Но если x равно 3.9, y станет 4, потому что эта функция будет обходить float32 вместо усечения. Есть ли способ усечения вместо округления? и если да, возможно ли это сделать без привлечения строк? (например, приведение float в int в C)
Просто используйте int()
:
x := float32(3.1)
fmt.Println(int(x))
Что создает 3
по мере необходимости, без необходимости использовать преобразования строк и т.п.