with Sign
Платформа и требования к версии: Common (1.2), Wasm-JS (1.8), Wasm-WASI (1.8)
expect fun Double.withSign(sign: Double): Double
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Если знак равен NaN, знак результата не определён.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14.withSign(3.14)) // 3.14
println(3.14.withSign(-3.14)) // -3.14
println((-3.14).withSign(-3.14)) // -3.14
println((-3.14).withSign(0.0)) // 3.14
println(Double.NaN.withSign(-1.0)) // NaN
//sampleEnd
}
expect fun Double.withSign(sign: Int): Double
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14.withSign(100)) // 3.14
println(3.14.withSign(-100)) // -3.14
println((-3.14).withSign(-100)) // -3.14
println((-3.14).withSign(0)) // 3.14
println(Double.NaN.withSign(-1)) // NaN
//sampleEnd
}
expect fun Float.withSign(sign: Float): Float
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Если знак равен NaN, знак результата не определён.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14f.withSign(3.14f)) // 3.14
println(3.14f.withSign(-3.14f)) // -3.14
println((-3.14f).withSign(-3.14f)) // -3.14
println((-3.14f).withSign(0.0f)) // 3.14
println(Float.NaN.withSign(-1.0f)) // NaN
//sampleEnd
}
expect fun Float.withSign(sign: Int): Float
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14f.withSign(100)) // 3.14
println(3.14f.withSign(-100)) // -3.14
println((-3.14f).withSign(-100)) // -3.14
println((-3.14f).withSign(0)) // 3.14
println(Float.NaN.withSign(-1)) // NaN
//sampleEnd
}
Платформа и требования к версии: JS (1.2)
actual fun Double.withSign(sign: Double): Double
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Если знак равен NaN, знак результата не определён.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14.withSign(3.14)) // 3.14
println(3.14.withSign(-3.14)) // -3.14
println((-3.14).withSign(-3.14)) // -3.14
println((-3.14).withSign(0.0)) // 3.14
println(Double.NaN.withSign(-1.0)) // NaN
//sampleEnd
}
actual inline fun Double.withSign(sign: Int): Double
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14.withSign(100)) // 3.14
println(3.14.withSign(-100)) // -3.14
println((-3.14).withSign(-100)) // -3.14
println((-3.14).withSign(0)) // 3.14
println(Double.NaN.withSign(-1)) // NaN
//sampleEnd
}
actual inline fun Float.withSign(sign: Float): Float
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Если знак равен NaN, знак результата не определён.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14f.withSign(3.14f)) // 3.14
println(3.14f.withSign(-3.14f)) // -3.14
println((-3.14f).withSign(-3.14f)) // -3.14
println((-3.14f).withSign(0.0f)) // 3.14
println(Float.NaN.withSign(-1.0f)) // NaN
//sampleEnd
}
actual inline fun Float.withSign(sign: Int): Float
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14f.withSign(100)) // 3.14
println(3.14f.withSign(-100)) // -3.14
println((-3.14f).withSign(-100)) // -3.14
println((-3.14f).withSign(0)) // 3.14
println(Float.NaN.withSign(-1)) // NaN
//sampleEnd
}
Платформа и требования к версии: JVM (1.2)
actual inline fun Double.withSign(sign: Double): Double
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Если знак равен NaN, знак результата не определён.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14.withSign(3.14)) // 3.14
println(3.14.withSign(-3.14)) // -3.14
println((-3.14).withSign(-3.14)) // -3.14
println((-3.14).withSign(0.0)) // 3.14
println(Double.NaN.withSign(-1.0)) // NaN
//sampleEnd
}
actual inline fun Double.withSign(sign: Int): Double
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14.withSign(100)) // 3.14
println(3.14.withSign(-100)) // -3.14
println((-3.14).withSign(-100)) // -3.14
println((-3.14).withSign(0)) // 3.14
println(Double.NaN.withSign(-1)) // NaN
//sampleEnd
}
actual inline fun Float.withSign(sign: Float): Float
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Если знак равен NaN, знак результата не определён.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14f.withSign(3.14f)) // 3.14
println(3.14f.withSign(-3.14f)) // -3.14
println((-3.14f).withSign(-3.14f)) // -3.14
println((-3.14f).withSign(0.0f)) // 3.14
println(Float.NaN.withSign(-1.0f)) // NaN
//sampleEnd
}
actual inline fun Float.withSign(sign: Int): Float
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14f.withSign(100)) // 3.14
println(3.14f.withSign(-100)) // -3.14
println((-3.14f).withSign(-100)) // -3.14
println((-3.14f).withSign(0)) // 3.14
println(Float.NaN.withSign(-1)) // NaN
//sampleEnd
}
Платформа и требования к версии: Native (1.3)
actual external fun Double.withSign(sign: Double): Double
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Если знак равен NaN, знак результата не определён.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14.withSign(3.14)) // 3.14
println(3.14.withSign(-3.14)) // -3.14
println((-3.14).withSign(-3.14)) // -3.14
println((-3.14).withSign(0.0)) // 3.14
println(Double.NaN.withSign(-1.0)) // NaN
//sampleEnd
}
actual fun Double.withSign(sign: Int): Double
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14.withSign(100)) // 3.14
println(3.14.withSign(-100)) // -3.14
println((-3.14).withSign(-100)) // -3.14
println((-3.14).withSign(0)) // 3.14
println(Double.NaN.withSign(-1)) // NaN
//sampleEnd
}
actual external fun Float.withSign(sign: Float): Float
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Если знак равен NaN, знак результата не определён.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14f.withSign(3.14f)) // 3.14
println(3.14f.withSign(-3.14f)) // -3.14
println((-3.14f).withSign(-3.14f)) // -3.14
println((-3.14f).withSign(0.0f)) // 3.14
println(Float.NaN.withSign(-1.0f)) // NaN
//sampleEnd
}
actual fun Float.withSign(sign: Int): Float
Возвращает это значение со знаковым битом, совпадающим со знаковым битом значения знака.
Примеры
import kotlin.math.*
import kotlin.test.*
fun main() {
//sampleStart
println(3.14f.withSign(100)) // 3.14
println(3.14f.withSign(-100)) // -3.14
println((-3.14f).withSign(-100)) // -3.14
println((-3.14f).withSign(0)) // 3.14
println(Float.NaN.withSign(-1)) // NaN
//sampleEnd
}
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.math/with-sign.html