Функция nextAfter
Функция nextAfter возвращает следующее представимое число
с плавающей точкой после первого аргумента в направлении второго аргумента.
Используется для точных математических вычислений и работы
с граничными значениями чисел с плавающей точкой.
Импорт
import kotlin.math.nextAfter
Синтаксис
fun nextAfter(start: Double, direction: Double): Double
fun nextAfter(start: Float, direction: Float): Float
Пример
Получим следующее число после 1.0 в направлении 2.0:
val start = 1.0
val direction = 2.0
val res = nextAfter(start, direction)
println(res)
Результат выполнения кода:
Double 1.0000000000000002
Пример
Получим следующее число после 1.0F в направлении 0.0F:
val start = 1.0F
val direction = 0.0F
val res = nextAfter(start, direction)
println(res)
Результат выполнения кода:
Float 0.99999994
Пример
Если направление совпадает со стартовым значением, функция возвращает само стартовое значение:
val start = 5.0
val direction = 5.0
val res = nextAfter(start, direction)
println(res)
Результат выполнения кода:
Double 5.0
Пример
Работа с положительной бесконечностью:
val start = Double.POSITIVE_INFINITY
val direction = 0.0
val res = nextAfter(start, direction)
println(res)
Результат выполнения кода:
Double 1.7976931348623157E308
Пример
Работа с NaN (Not a Number):
val start = Double.NaN
val direction = 1.0
val res = nextAfter(start, direction)
println(res)
Результат выполнения кода:
Double NaN