我有一个不同元素的列表,其中一个元素是类型选项。如何确定该位置是否有元素?我尝试将其包装在Some()函数中,但是,这不会让我知道是否不存在。
我有一个Cookie订单的csv文件。我已经正确地分割了每一行(每个订单),创建了一个名为Order的案例类,但是列表中的第三个条目包含可选的附加注释。我需要知道它是否为空(无)或一些并显示注释;格式为some(“无论顺序是什么”)或无。
csv文件中的每个条目都以字符串形式输入到此函数中,
def process(string entry): Order
,我将其制成val行并使用.split(,)方法进行拆分,并放入列表中。
val line = entry.split(",").toList
列表仍然是字符串。订单的参数是string,string,Some [string]。
这是我尝试过的,但没有显示“无”。
val cookieOrder = Order(line(0), line(1), Some(line(2))
如果没有第三个元素,我对订单的预期结果是
"some string", "some string", None
分割前的一行示例是
“”“牛奶,伦敦,”“”
谢谢
答案 0 :(得分:0)
所以假设这行看起来像这样:
val str = "milk,London, " // Note the trailing white space.
然后您可以执行以下操作:
val line = str.trim.split(',')
// line: Array[String] = Array(milk, London)
val opt = line.lift(2)
// opt: Option[String] = None