如何在Scala中从输出中删除括号
我有以下输出: 食品订购成本为:如何在Scala中从输出中删除括号,scala,Scala,我有以下输出: 食品订购成本为: $84.9 () 从该函数: def foodBill(foodCost: List[Double]) = { if (foodCost.length <= 1) { println("The food order cost is: ") foodTotal.foreach(x=>println("$"+ x)) } else { println("The food order for eac
$84.9
()
从该函数:
def foodBill(foodCost: List[Double]) = {
if (foodCost.length <= 1) {
println("The food order cost is: ")
foodTotal.foreach(x=>println("$"+ x))
} else {
println("The food order for each table is: ")
foodCost.foreach(x => println("$"+ x))
}
}
def foodBill(foodCost:List[Double])={
如果(foodCost.length println(“$”+x))
}否则{
println(“每张桌子的食物顺序是:”)
foodCost.foreach(x=>println(“$”+x))
}
}
因此,我的问题是如何从输出中删除()并具有以下功能:
食品订购成本为:
84.9美元
谢谢而不是
println(foodBill(List(84.9)))
您应该像调用一样调用它
foodBill(List(84.9))
这不是一种严格类型的bash脚本,将字符串打印到标准输出与返回值不同。如何调用函数?您试图实现什么?@user152468,我将其命名为:println(foodBill(foodTotal)),我正试图打印食品账单。@user152468,有没有一种方法不使用object@mike它返回
单位
,因为if
的每个分支都返回一个单位
。每个分支返回Unit
,因为foreach
返回Unit
。这就是为什么您应该显式地指定返回类型。如果您将其声明为def foodBill(foodCost:List[Double]):Unit
,那么就不会有任何问题了。我知道为什么要输出类型?您所说的“输出类型”是什么意思<代码>()不是一种类型。它是Unit
类型的唯一值,由foreach
返回。是的,您已经回答了我的问题。我以为()这是一个类型,但它是一个值。我现在明白了。再次感谢