From f9ca7130f2a8d7307246f5b4e6e7cc9c17355f4b Mon Sep 17 00:00:00 2001 From: luming Date: Thu, 1 Jul 2021 11:30:30 +0800 Subject: [PATCH] lambda --- src/senior/Lambda/Senior.kt | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/src/senior/Lambda/Senior.kt b/src/senior/Lambda/Senior.kt index 7b4be2f..2204bcb 100644 --- a/src/senior/Lambda/Senior.kt +++ b/src/senior/Lambda/Senior.kt @@ -5,15 +5,36 @@ fun main(args: Array) { println("被5整除的") println(range.pickNum { x: Int -> x % 5 == 0 }) println("被10整除的") + println(range.pickNum({ x: Int -> x % 10 == 0 })) println(range.pickNum { x: Int -> x % 10 == 0 }) + println("被15整除的") + println(range.pickNum { it % 15 == 0 }) + println("移除指定数字") + println(range.removeNum(20,{x: Int -> x % 10 == 0})) + println(range.removeNum(50) { x: Int -> x % 10 == 0 }) + + println(range.removeNum(40) { it % 10 == 0 }) } fun IntRange.pickNum(function: (Int) -> Boolean): List { - val list: MutableList = mutableListOf(); + val list: MutableList = mutableListOf() for (i in this) { if (function(i)) { list.add(i) } } return list -} \ No newline at end of file +} + +/** + * 移除数据 + */ +fun IntRange.removeNum(removeNumm: Int, func: (Int) -> Boolean): List { + var list: MutableList = mutableListOf() + for (i in this) { + if (func(i) && i != removeNumm) { + list.add(i) + } + } + return list +}