我想在scala中创建一个可变元组。(String, Set[String])
.而之前我想先把它初始化为一个空值,然后再添加到它上面去
集合不能被初始化为空集合。 String也是一样,我得到一个错误信息说 class java.lang.String is not a value
有什么简单的方法可以做到这一点? 我做错了什么?
空 Set
可以这样定义
Set.empty[String] // because assert(Set.empty[String].isEmpty)
空的 String
可以这样定义
"" // because assert("".isEmpty)
空元组 并不是Scala建模为 TupleN
我想。相反,它使用 Unit
类型为它。也许你正在寻找这样的东西
val ta: (String, Set[String]) = ("", Set.empty)
val tb: (Option[String], Option[Set[String]]) = (None, None)
val tc: Option[(String, Set[String])] = None
错误信息
class java.lang.String is not a value
意味着你使用的是一个预期值的类型,例如,考虑一下在
Set[String] // ok
Set(String) // error