الدالة takeWhile()
في Kotlin
< Kotlin | collections
تجلب الدالة takeWhile()
أول عناصر محققة لشرطٍ محدَّدٍ من المصفوفة أو القائمة التي استُدعيت معها.
البنية العامة
inline fun <T> Array<out T>.takeWhile(
predicate: (T) -> Boolean
): List<T>
inline fun ByteArray.takeWhile(
predicate: (Byte) -> Boolean
): List<Byte>
inline fun ShortArray.takeWhile(
predicate: (Short) -> Boolean
): List<Short>
inline fun IntArray.takeWhile(
predicate: (Int) -> Boolean
): List<Int>
inline fun LongArray.takeWhile(
predicate: (Long) -> Boolean
): List<Long>
inline fun FloatArray.takeWhile(
predicate: (Float) -> Boolean
): List<Float>
inline fun DoubleArray.takeWhile(
predicate: (Double) -> Boolean
): List<Double>
inline fun BooleanArray.takeWhile(
predicate: (Boolean) -> Boolean
): List<Boolean>
inline fun CharArray.takeWhile(
predicate: (Char) -> Boolean
): List<Char>
inline fun <T> Iterable<T>.takeWhile(
predicate: (T) -> Boolean
): List<T>
يُلاحَظ وجود الكلمة المفتاحية inline
التي تدل على أن هذه الدالة مباشرة (للمزيد من التفاصيل، راجع صفحة الدوال المباشرة (inline functions)).
المعاملات
predicate
دالةٌ تطبق على كل عنصر من عناصر المصفوفة أو القائمة المعطاة. يمرر إليها كل عنصر على حدة ثم تعيد القيمة المنطقية المقابلة له.
القيمة المعادة
تعاد قائمة تحوي العناصر الأولى المحققة للشرط predicate
المعطى من المصفوفة أو القائمة المعطاة.
أمثلة
استعمال الدالة ()takeWhile
لجلب العناصر الأولى الأصغر من الحرف 'f' من قائمة:
fun main(args: Array<String>) {
val chars = ('a'..'z').toList()
println(chars.takeWhile { it < 'f' }) // [a, b, c, d, e]
}
انظر أيضًا
- الدالة
take()
: تجلب أولn
عنصر من المصفوفة أو المجموعة التكرارية التي استُدعيت معها وتضعها في قائمة. - الدالة
takeLast()
: تجلب آخرn
عنصر من المصفوفة أو المجموعة التكرارية التي استُدعيت معها وتضعها في قائمة. - الدالة
takeLastWhile()
: تجلب آخر عناصر محققة لشرطٍ محدَّدٍ من المصفوفة أو القائمة التي استُدعيت معها.