Kotlin 数组 - dropLastWhile() 函数



Kotlin 数组 dropLastWhile() 函数用于检索包含所有元素的列表,除了满足给定谓词或条件的最后 n 个元素。

此函数采用大于 (>) 运算符并从最后到给定条件删除所有元素。例如;dropLastWhile{it > 'x'} 删除 x 之后的所有元素

语法

以下是 Kotlin 数组 dropLastWhile() 函数的语法 -

fun <T> Array<out T>.dropLastWhile(
    predicate: (T) -> Boolean
): List<T>

参数

此函数接受谓词函数作为参数。此谓词函数表示需要从数组的最后一个索引中删除的元素数量。

返回值

此函数返回一个列表,其中包含删除后剩余的所有元素。

示例 1

以下是一些演示 dropLastWhile() 函数用法的基本示例 -

fun main(args: Array<String>) {
   val number: Array<Int> = arrayOf(1, 2, 3, 4, 5, 6, 7, 8)
   val after_drop = number.dropLastWhile{it>5}
   println("list after dropped: $after_drop")
}

输出

执行上述代码后,我们将获得以下结果 -

list after dropped: [1, 2, 3, 4, 5]

示例 2

现在,让我们看另一个例子。我们创建一个存储字符串的数组。然后,我们使用 dropLastWhile() 函数删除最后 n 个元素,直到我们得到给定的谓词 -

fun main(args: Array<String>) {
   val strings: Array<String> = arrayOf("hii", "Hello", "tutorix", "tutorialspoint")
   val after_drop = strings.dropLastWhile{it>"Hello"}
   println("list after dropped: $after_drop")
}

输出

执行上述代码后,我们将获得以下输出 -

list after dropped: [hii, Hello]

示例 3

下面的示例创建一个包含 26 个字符的数组。然后我们使用 dropLastWhile() 删除最后 n 个元素,直到我们得到 'n' -

fun main(args: Array<String>) {
   // Create an array of characters from 'a' to 'z'
   val alphabet: Array<Char> = ('a'..'z').toList().toTypedArray()
   
   // Drop the last n elements to the given predicate
   val after_Drop = alphabet.dropLastWhile{it>'n'}
   
   println("List after dropping the last n elements: $after_Drop")
}

输出

以上代码产生以下输出 -

List after dropping the first n elements: [m, n, o, p, q, r, s, t, u, v, w, x, y, z]
kotlin_arrays.htm
广告