昨晚,在某个不愉快的时刻,我们庆祝了第五次因以下行为而追踪到错误的实例:String.split
,例如在
output split '\n' map processRow
问题是如果output
是空的,split
会给你一行空字符串,processRow
可能不会喜欢。
很容易增强String
with a split0
方法(我们有),如果字符串为空,它返回空数组,但我们总是忘记这一点split
有这种行为,它不是正确的逆mkString
。太好了,被这只狗咬了五口就够了——我们想躲起来split
并强迫自己做出选择split0
and split1
。这在 Scala 中可能吗?
正如你所说processRow
不喜欢空字符串,你可以这样做。
output split '\n' filter(_.nonEmpty) map processRow
您还可以使用其他方便的功能scala.collection.immutable.StringLike
, 例如StringLike.stripLineEnd
,尽管这只会删除尾随行结束字符。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)