我写了以下简单的代码:
def Commas(n: Long) = {
if (n >= 1000)
Commas(n/1000)
print(","+ n%1000/100 + n%100/10 + n%10)
else
print(n%1000/100 + n%100/10 + n%10)
}
虽然这对我来说似乎是正确的,但有一个错误。上面的代码有什么问题?
我写了以下简单的代码:
def Commas(n: Long) = {
if (n >= 1000)
Commas(n/1000)
print(","+ n%1000/100 + n%100/10 + n%10)
else
print(n%1000/100 + n%100/10 + n%10)
}
虽然这对我来说似乎是正确的,但有一个错误。上面的代码有什么问题?
If...else...
语法需要一个语句。您可以使用周围的代码块来确保您的代码按预期工作。类似的东西(另请注意,您必须指定返回类型Unit
或仅删除=
符号):
def Commas(n: Long) {
if (n >= 1000) {
Commas(n/1000)
print(","+ n%1000/100 + n%100/10 + n%10)
}
else
print(n%1000/100 + n%100/10 + n%10)
}
尝试这个:
def Commas(n: Long) = {
if (n >= 1000) {
Commas(n/1000)
print(","+ n%1000/100 + n%100/10 + n%10);
}
else {
print(n%1000/100 + n%100/10 + n%10);
}
免责声明:此解决方案适用于类似错误但不完全相同的情况。
我遇到了同样的错误。我犯的错误是,我将命令提示符代码复制粘贴到文件中,但忘记删除函数行中的竖线 (|) 字符并得到相同的错误。如果你因为这个原因来到这个页面,现在你可以修复它。享受。
或者试试这个:
def Commas(n: Long) = {
if (n >= 1000)
Commas(n/1000); print(","+ n%1000/100 + n%100/10 + n%10)
else
print(n%1000/100 + n%100/10 + n%10)
}