初始化一个空元组scala

odopli94  于 2023-10-18  发布在  Scala
关注(0)|答案(1)|浏览(187)

我想在scala (String, Set[String])中创建一个可变元组。我想先把它初始化为一个空值,然后再加
该集合不能被初始化为空集合。String也是如此。我得到一个错误,说class java.lang.String is not a value有一个简单的方法来做到这一点吗?我做错了什么

xkftehaa

xkftehaa1#

空的Set可以这样定义

  1. Set.empty[String] // because assert(Set.empty[String].isEmpty)

空的String可以这样定义

  1. "" // because assert("".isEmpty)

我认为,Empty tuple不是Scala模型中的TupleN。它使用Unit类型。也许你在找这样的东西

  1. val ta: (String, Set[String]) = ("", Set.empty)
  2. val tb: (Option[String], Option[Set[String]]) = (None, None)
  3. val tc: Option[(String, Set[String])] = None

错误消息

  1. class java.lang.String is not a value

意味着您正在使用需要值的类型,例如,考虑以下类型之间的差异:

  1. Set[String] // ok
  2. Set(String) // error
展开查看全部

相关问题