all Distinct
Начиная с Kotlin: 2.4
fun <T> Array<out T>.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Для элементов типов с плавающей точкой (Double, Float) NaN считается равным NaN, а -0.0 считается не равным 0.0, что соответствует поведению Double.equals и Float.equals.
Примеры
fun main() {
//sampleStart
println(arrayOf<String>().allDistinct()) // true
println(arrayOf("apple").allDistinct()) // true
val distinctValues = arrayOf("apple", "mango", "peach")
println(distinctValues.allDistinct()) // true
val duplicateValues = arrayOf("apple", "mango", "apple")
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun ByteArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Примеры
fun main() {
//sampleStart
println(byteArrayOf().allDistinct()) // true
println(byteArrayOf(1).allDistinct()) // true
val distinctValues = byteArrayOf(1, 2, 3)
println(distinctValues.allDistinct()) // true
val duplicateValues = byteArrayOf(1, 2, 1)
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun ShortArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Примеры
fun main() {
//sampleStart
println(shortArrayOf().allDistinct()) // true
println(shortArrayOf(1).allDistinct()) // true
val distinctValues = shortArrayOf(1, 2, 3)
println(distinctValues.allDistinct()) // true
val duplicateValues = shortArrayOf(1, 2, 1)
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun IntArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Примеры
fun main() {
//sampleStart
println(intArrayOf().allDistinct()) // true
println(intArrayOf(1).allDistinct()) // true
val distinctValues = intArrayOf(1, 2, 3)
println(distinctValues.allDistinct()) // true
val duplicateValues = intArrayOf(1, 2, 1)
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun LongArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Примеры
fun main() {
//sampleStart
println(longArrayOf().allDistinct()) // true
println(longArrayOf(1L).allDistinct()) // true
val distinctValues = longArrayOf(1L, 2L, 3L)
println(distinctValues.allDistinct()) // true
val duplicateValues = longArrayOf(1L, 2L, 1L)
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun FloatArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются согласно правилам равенства, соответствующим Float.equals. Операция возвращает false, как только обнаруживается повторяющийся элемент.
NaN считается равным NaN, а -0.0 считается не равным 0.0, что соответствует поведению Float.equals.
Примеры
fun main() {
//sampleStart
println(floatArrayOf().allDistinct()) // true
println(floatArrayOf(1.0f).allDistinct()) // true
val distinctValues = floatArrayOf(1.0f, 2.0f, 3.0f)
println(distinctValues.allDistinct()) // true
val duplicateValues = floatArrayOf(1.0f, 2.0f, 1.0f)
println(duplicateValues.allDistinct()) // false
println(floatArrayOf(Float.NaN, Float.NaN).allDistinct()) // false
println(floatArrayOf(0.0f, -0.0f).allDistinct()) // true
//sampleEnd
}
fun DoubleArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются согласно правилам равенства, соответствующим Double.equals. Операция возвращает false, как только обнаруживается повторяющийся элемент.
NaN считается равным NaN, а -0.0 считается не равным 0.0, что соответствует поведению Double.equals.
Примеры
fun main() {
//sampleStart
println(doubleArrayOf().allDistinct()) // true
println(doubleArrayOf(1.0).allDistinct()) // true
val distinctValues = doubleArrayOf(1.0, 2.0, 3.0)
println(distinctValues.allDistinct()) // true
val duplicateValues = doubleArrayOf(1.0, 2.0, 1.0)
println(duplicateValues.allDistinct()) // false
println(doubleArrayOf(Double.NaN, Double.NaN).allDistinct()) // false
println(doubleArrayOf(0.0, -0.0).allDistinct()) // true
//sampleEnd
}
fun BooleanArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Примеры
fun main() {
//sampleStart
println(booleanArrayOf().allDistinct()) // true
println(booleanArrayOf(true).allDistinct()) // true
val distinctValues = booleanArrayOf(true, false)
println(distinctValues.allDistinct()) // true
val duplicateValues = booleanArrayOf(true, false, true)
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun CharArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Примеры
fun main() {
//sampleStart
println(charArrayOf().allDistinct()) // true
println(charArrayOf('a').allDistinct()) // true
val distinctValues = charArrayOf('a', 'b', 'c')
println(distinctValues.allDistinct()) // true
val duplicateValues = charArrayOf('a', 'b', 'a')
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun <T> Iterable<T>.allDistinct(): Boolean
Возвращает true, если все элементы коллекции различны, то есть никакие два элемента не равны.
Для пустой коллекции возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Для элементов типов с плавающей точкой (Double, Float) NaN считается равным NaN, а -0.0 считается не равным 0.0, что соответствует поведению Double.equals и Float.equals.
Примеры
fun main() {
//sampleStart
println(listOf<String>().allDistinct()) // true
println(listOf("apple").allDistinct()) // true
val distinctValues = listOf("apple", "mango", "peach")
println(distinctValues.allDistinct()) // true
val duplicateValues = listOf("apple", "mango", "apple")
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun UIntArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Примеры
fun main() {
//sampleStart
println(uintArrayOf().allDistinct()) // true
println(uintArrayOf(1u).allDistinct()) // true
val distinctValues = uintArrayOf(1u, 2u, 3u)
println(distinctValues.allDistinct()) // true
val duplicateValues = uintArrayOf(1u, 2u, 1u)
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun ULongArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Примеры
fun main() {
//sampleStart
println(ulongArrayOf().allDistinct()) // true
println(ulongArrayOf(1uL).allDistinct()) // true
val distinctValues = ulongArrayOf(1uL, 2uL, 3uL)
println(distinctValues.allDistinct()) // true
val duplicateValues = ulongArrayOf(1uL, 2uL, 1uL)
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun UByteArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Примеры
fun main() {
//sampleStart
println(ubyteArrayOf().allDistinct()) // true
println(ubyteArrayOf(1u).allDistinct()) // true
val distinctValues = ubyteArrayOf(1u, 2u, 3u)
println(distinctValues.allDistinct()) // true
val duplicateValues = ubyteArrayOf(1u, 2u, 1u)
println(duplicateValues.allDistinct()) // false
//sampleEnd
}
fun UShortArray.allDistinct(): Boolean
Возвращает true, если все элементы массива различны, то есть никакие два элемента не равны.
Для пустого массива возвращает true.
Элементы сравниваются с использованием структурного равенства (==). Операция возвращает false, как только обнаруживается повторяющийся элемент.
Примеры
fun main() {
//sampleStart
println(ushortArrayOf().allDistinct()) // true
println(ushortArrayOf(1u).allDistinct()) // true
val distinctValues = ushortArrayOf(1u, 2u, 3u)
println(distinctValues.allDistinct()) // true
val duplicateValues = ushortArrayOf(1u, 2u, 1u)
println(duplicateValues.allDistinct()) // false
//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.collections/all-distinct.html