string - 在 Scala 中将带空值的字符串数组转换为 Int 数组
问题描述
给定 Array("1","2",null,"3"),将其转换为整数数组,将 null 替换为 0。
我知道我们可以使用成功/失败模式,但我怎样才能用一个简单的案例陈述来做到这一点?
Array("1","2",null,"3").map({
case null => 0
case _ => (_:String).toInt})
返回Array(<function1>,<function1>,0,<function1>)
解决方案
如果您只期望空值和数字,则可以使用Option
:
Array("1","2",null,"3").map(Option(_).fold {0} {_.toInt})
请注意,这将抛出数组中不是int
or的任何元素null
。
代码在Scastie运行。
推荐阅读
- windows - 如何从访客帐户重置管理员密码
- c# - 为什么当从另一个类调用时,图表没有被填充?
- python - Django 格式 DateTimeField 输出到 {YYYY-MM-DD} {HH:MM AM/PM}
- android - Android中的视频水印
- django - 如何在 Django REST API 中获取用户帖子的用户名而不是数字?
- r - 如何在 SUMIFS 中设置两个动态条件,例如 R 中的问题?
- pyqt5 - 如何在 Designer-qt5 中推广的 PlotWidget() 上制作十字准线鼠标跟踪器
- oracle - 这个 Oracle 存储过程调用有什么问题?
- bokeh - 是否可以绘制来自各种来源的数据?
- c# - 计数排序:计数数组最小值、最大值和频率