首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

接收要发送到`List<>.mapNotNull()`的转换映射函数

List<>.mapNotNull()是一个用于集合转换的函数,它接收一个转换映射函数作为参数,并返回一个新的集合。该函数会对集合中的每个元素进行转换,并将转换结果添加到新的集合中。与普通的map()函数不同的是,mapNotNull()函数会过滤掉转换结果为null的元素。

这个函数的使用场景是在需要对集合中的元素进行转换,并且只保留非null转换结果的情况下。例如,当我们有一个包含字符串的集合,想要将每个字符串转换为对应的整数,并且只保留转换结果非null的元素时,可以使用mapNotNull()函数。

以下是一个示例代码:

代码语言:txt
复制
val strings = listOf("1", "2", "3", "4", "5")
val numbers = strings.mapNotNull { it.toIntOrNull() }
println(numbers) // 输出:[1, 2, 3, 4, 5]

在上面的示例中,我们使用mapNotNull()函数将字符串集合strings中的每个字符串转换为整数,并将非null的转换结果保存到新的集合numbers中。最后,我们打印出numbers集合的内容。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云函数计算(SCF):腾讯云函数计算(Serverless Cloud Function,简称 SCF)是一种事件驱动的无服务器计算服务,让您无需管理服务器即可运行代码。它支持多种语言,包括 Java、Python、Node.js 等,可用于快速构建和部署云端应用。了解更多信息,请访问腾讯云函数计算产品介绍
  • 腾讯云云服务器(CVM):腾讯云云服务器(Cloud Virtual Machine,简称 CVM)是一种可弹性伸缩的云服务器,提供高性能、高可靠的计算服务。您可以根据业务需求选择不同配置的云服务器,并通过腾讯云控制台或 API 进行管理和操作。了解更多信息,请访问腾讯云云服务器产品介绍

请注意,以上推荐的腾讯云产品仅作为示例,实际使用时应根据具体需求进行选择。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

一篇掌握LiveData transformations

The basics… 对LiveData进行转换是非常容易,有一个名为Transformations辅助类正是为了这个目的。...下面的所有例子都将使用下面的数据类,它代表了我们从数据库或后台API接收一个Player数据。这个Player模型只有一个名字和分数字段,以方便举例,但在现实中,它将有更多字段。...: return value = Game(players = game.playerIds .mapNotNull...这也是你决定如何转换源数据值地方。上面的例子只是将aVal和bVal相加,但你当然可以在这里应用你想要任何转换。...结论 在所有的LiveData转换中使用map、switchMap和distinctUntilChanged。除非有必要,否则应避免编写自己转换,并尝试结合操作来创建更复杂转换

1.5K20
  • Python函数式编程之内置高阶函数

    map() map()映射函数。 入参:一个参数是函数;另外一个参数是可迭代对象。作用:map()映射函数将传入函数依次作用到传入可迭代对象每一个元素上, 得到一个新可迭代对象并返回。...reduce()函数还可以接收第 3个可选参数作为计算初始值。比如print(reduce(f, numbers, 10)),结果将是25,因为首先计算f(10, 1)。...与map()函数类似,filter() 函数也接收一个函数和一个序列。...实际上, sorted()函数是高阶函数, 可以通过key接收一个函数自定义排序方法。比如传入绝对值函数abs。 如果实现反向排序,可以用reverse=True。...给字符排序时,如果忽略首字母大、 小写影响,可以用key=str.lower。 参考:- 《物联网Python开发实战》

    41820

    Python函数式编程之内置高阶函数

    map() map()映射函数。 入参:一个参数是函数;另外一个参数是可迭代对象。作用:map()映射函数将传入函数依次作用到传入可迭代对象每一个元素上, 得到一个新可迭代对象并返回。...reduce()函数还可以接收第 3个可选参数作为计算初始值。比如print(reduce(f, numbers, 10)),结果将是25,因为首先计算f(10, 1)。...与map()函数类似,filter() 函数也接收一个函数和一个序列。...实际上, sorted()函数是高阶函数, 可以通过key接收一个函数自定义排序方法。比如传入绝对值函数abs。 如果实现反向排序,可以用reverse=True。...给字符排序时,如果忽略首字母大、 小写影响,可以用key=str.lower。

    26520

    JDK新特性——Stream代码简洁之道详细用法

    Set) 5、支持过滤、查找、转换、汇总、聚合等操作 6、延迟计算,流在中间处理过程中,只是对操作进行了记录,并不会立即执行,需要等到执行终止操作时候才会进行实际计算 三、分类 关于应用在Stream...转换 map:接收一个函数作为参数,该函数会被应用到每个元素上,并将其映射成一个新元素。 flatMap:接收一个函数作为参数,将流中每个值都换成另一个流,然后把所有流连接成一个流。...消费 peek:如同于map,能得到流中每一个元素。但map接收是一个Function表达式,有返回值;而peek接收是Consumer表达式,没有返回值。...Collector collectingAndThen(Collector downstream, Function finisher) 适应 Collector进行额外整理转换...,它将元素累加到一个 ConcurrentMap ,其键和值是将所提供映射函数应用于输入元素结果。

    64430

    Python-map、reduce、fi

    结合map、reduce函数,把字符串'123.456'转换成浮点数123.456: ? filter()函数 和map()类似,filter()也接收一个函数和一个序列。...sorted()函数 sorted()函数就可以对list进行排序: ? sorted()函数是一个高阶函数,它还可以接收一个key函数来实现自定义排序,例如按绝对值大小排序: ?...key指定函数将作用于list每一个元素上,并根据key函数返回结果进行排序。对比原始list和经过key=abs处理过list: ?...实现这个算法,不必对现有代码大加改动,只要我们能用一个key函数把字符串映射为忽略大小写排序即可。忽略大小写来比较两个字符串,实际上就是先把字符串都变成大写(或者都变成小写),再比较。...用sorted()排序关键在于实现一个映射函数

    82110

    必须掌握4个RDD算子之filter算子

    就像是 map 算子依赖其映射函数一样,filter 算子也需要借助一个判定函数 f,才能实现对 RDD 过滤转换。所谓判定函数,它指的是类型为(RDD 元素类型) => (Boolean)函数。...掌握了 filter 算子用法之后,实现这样过滤逻辑,我相信你很快就能写出如下代码实现: // 定义特殊字符列表 val list: List[String] = List("&", "|",...总结 首先,我们讲了 map 算子用法,它允许开发者自由地对 RDD 做各式各样数据转换,给定映射函数 f,map(f) 以元素为粒度对 RDD 做数据转换。...为了提升数据转换效率,Spark 提供了以数据分区为粒度 mapPartitions 算子。...flatMap 映射函数 f 比较特殊,它函数类型是(元素) => (集合),这里集合指的是像数组、列表这样数据结构。

    1.5K30

    Oracle中索引位图转换优势

    Oracle数据库里有一个映射函数(Mapping Function),它可以实现B树索引中ROWID和对应位图索引中位图之间互相转换。目的是对相同ROWID做AND、OR等连接运算。...最后将布尔运算结果再次用映射函数转换成了ROWID并回表得到最终结果。 1.2 性能分析 根据我们以往经验,用映射函数将ROWID转换成位图,这期间可能访问了多个索引,甚至一个索引会访问N多次。...回表逻辑读十分接近。 总结: 索引位图转换优势是减少回表次数。 OR扩展优势是其IN-LIST迭代部分消耗逻辑读较低。...因此我们在判断执行效率时,还是具体情况具体分析。...1.索引位图转换和传统OR扩展、IN-LIST迭代等形式、其执行效率具体情况具体分析。主要受影响于相关索引上聚簇因子值。

    95130

    Java8新特性第3章

    Java8中Stream是对集合功能一种增强,主要用于对集合对象进行各种非常便利高效聚合和大批量数据操作。结合Lambda表达式可以极大提高开发效率和代码可读性。...如果我们想把蓝色形状提取到新List里,则可以: 操作会把其接收元素聚集到一起(这里是List),方法参数则被用来指定如何进行聚集操作。在这里我们使用以把元素输出到List中。...如果每个形状都被保存在里,然后我们想知道哪个盒子至少包含一个蓝色形状,我们可以这么写: 操作通过映射函数(这里映射函数接收一个形状,然后返回包含它盒子)对输入流里面的元素进行依次转换,然后产生新流。...大多数Stream操作(filter,map,sort等)都是以惰性方式实现。...另外,像这样生成值操作和这样产生副作用操作都是天然急性求值,因为它们必须要产生具体结果。 我们拿下面这段代码举例: 这里和都是惰性,这就意味着在调用之前不会从数据源中提取任何元素。

    79870

    翻译连载 | 附录 A:Transducing(上)-《JavaScript轻量级函数式编程》 |《你不知道JS》姊妹篇

    Transducing 就是通过减少来转换。 我知道这听起来很令人费解。但是让我们来看看它有多强大。实际上,我认为这是你掌握了轻量级函数式编程后可以做最好例证之一。...在第 8 章中,我们讨论了融合 —— 组合相邻映射函数。...回忆一下: words .map( pipe( removeInvalidChars, upper, elide ) ); 不幸是,组合相邻断言函数并不像组合相邻映射函数那样容易。为什么呢?...想想断言函数长什么“样子” —— 一种描述输入和输出学术方式。它接收一个单一参数,返回一个 true 或 false。...所要字符串类型值。这可真倒霉。 试图组合两个相邻 reducer 函数同样是行不通。reducer 函数接收两个值作为输入,并返回单个组合值。

    68480
    领券