美文网首页
kotlin takeWhile/DropWhile等方法

kotlin takeWhile/DropWhile等方法

作者: 流水ke | 来源:发表于2019-06-24 20:28 被阅读0次

    takeWhile 、takeLastWhile、DropWhile、dropLastWhile、这四个方法傻傻分不清,还是用数字来判断最轻松,统一判断条件就很容易搞清楚各自代表的意思了。

        val numbers = listOf(4,1, 2, 3,2,5,3 ,4,5,6,7,8)
    
        println("-----------------多个元素不符合--------------")
        println(numbers.takeWhile {  it > 3  })   //返回list第一个元素到第一个不符合条件的元素之前的元素列表;list第一个元素不符合条件返回空
        println(numbers.takeLastWhile { it > 3  })  //返回list最后一个元素倒序到最后一个不符合条件的元素之前的列表;list最后一个元素不符合条件返回空
        println(numbers.dropWhile { it > 3  })  //和takeWhile完全相反,返回第一个不符合条件元素到list最后一个元素的元素列表
        println(numbers.dropLastWhile { it > 3  }) //和takeLastWhile完全相反,返回list第一个元素到最后一个不符合条件元素的元素列表
    
        println("-----------------只有1个元素不符合--------------")
    
        val numbers2 = listOf(4,5,3 ,4,5,6,7,8)
        println(numbers2.takeWhile {  it > 3  })
        println(numbers2.takeLastWhile { it > 3  })
        println(numbers2.dropWhile { it > 3  })
        println(numbers2.dropLastWhile { it > 3  })
    
        println("---------------第1个元素不符合----------------")
    
        val numbers3 = listOf(3,5,3 ,4,5,6,7,8)
        println(numbers3.takeWhile {  it > 3  })
        println(numbers3.takeLastWhile { it > 3  })
        println(numbers3.dropWhile { it > 3  })
        println(numbers3.dropLastWhile { it > 3  })
    
        println("---------------最后1个元素不符合----------------")
    
        val numbers4 = listOf(4,5,3 ,4,5,6,7,3)
        println(numbers4.takeWhile {  it > 3  })
        println(numbers4.takeLastWhile { it > 3  })
        println(numbers4.dropWhile { it > 3  })
        println(numbers4.dropLastWhile { it > 3  })
    
    //下方是打印结果
    -----------------多个元素不符合--------------
    [4]
    [4, 5, 6, 7, 8]
    [1, 2, 3, 2, 5, 3, 4, 5, 6, 7, 8]
    [4, 1, 2, 3, 2, 5, 3]
    -----------------只有1个元素不符合--------------
    [4, 5]
    [4, 5, 6, 7, 8]
    [3, 4, 5, 6, 7, 8]
    [4, 5, 3]
    ---------------第1个元素不符合----------------
    []
    [4, 5, 6, 7, 8]
    [3, 5, 3, 4, 5, 6, 7, 8]
    [3, 5, 3]
    ---------------最后1个元素不符合----------------
    [4, 5]
    []
    [3, 4, 5, 6, 7, 3]
    [4, 5, 3, 4, 5, 6, 7, 3]

    相关文章

      网友评论

          本文标题:kotlin takeWhile/DropWhile等方法

          本文链接:https://www.haomeiwen.com/subject/wrlaqctx.html