gpt4 book ai didi

list - 我应该使用空列表还是使其成为选项?

转载 作者:行者123 更新时间:2023-12-04 23:20:13 24 4
gpt4 key购买 nike

通常我的方法有一个 List可选的参数。当我收到一个项目列表时,我会对它们做一些事情,否则该参数将被忽略。这是一个简单的例子。

scala> def convertToUpper(s: String, appenders: List[String] = List()) {
(s.toUpperCase :: appenders).mkString(" ")
}

scala> convertToUpper("cory", List("asks", "questions"))
CORY asks questions

但有时我想知道这份契约(Contract)是否传达了对 appenders 的期望。参数实际上是可选的。另一方面,制作 appenders Option[List]增加了复杂性。

避免使用 Option 是不好的做法吗?当参数为 List 时我可以只测试空性而不是 None ?

最佳答案

如果一个空列表是一个有效的参数(在你的例子中就是这样)并且它的行为为 None会,那么我建议不要将列表包装在选项中。

我会说将它包装在一个选项中表示 NoneList()会被区别对待。

我认为接受列表作为参数的方法表现为无操作是相当普遍的。

关于list - 我应该使用空列表还是使其成为选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29262131/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com