如何定义一个Scala函数来调用它而不使用parens和dot
在Scala中,可以不使用括号调用函数。例如,如何定义一个Scala函数来调用它而不使用parens和dot,scala,Scala,在Scala中,可以不使用括号调用函数。例如,“1,2,3”split“,”是一个有效语句,其行为方式与“1,2,3”split(“,”完全相同 我如何定义一个可以这样调用的函数?我在这方面的经验(创建一个带有成员函数的类,然后尝试在没有和()的情况下调用它)没有奏效,它只是引发了一个语法错误。在调用函数时放置“.”是可选的,()也可以在调用时删除,如果您只有一个参数或没有参数。有关更多说明,请参阅本文 向我们展示不起作用的代码。只要该方法只使用一个参数,您所描述的方法就应该有效。请阅读我正在编
“1,2,3”split“,”
是一个有效语句,其行为方式与“1,2,3”split(“,”
完全相同
我如何定义一个可以这样调用的函数?我在这方面的经验(创建一个带有成员函数的类,然后尝试在没有
和()
的情况下调用它)没有奏效,它只是引发了一个语法错误。在调用函数时放置“.”是可选的,()也可以在调用时删除,如果您只有一个参数或没有参数。有关更多说明,请参阅本文
向我们展示不起作用的代码。只要该方法只使用一个参数,您所描述的方法就应该有效。请阅读我正在编辑的本教程,看起来我没有确切说明发生了什么;很抱歉同样感谢@rajkumarnatarjanokay的链接,我发现了我的错误:我试图用apply操作符来实现这一点,类似于
“1,2,3”split”,“2
,它可以用“1,2,3”split”,“apply 2
。我是否应该回答自己,关闭问题,或者重写问题,询问是否可以执行“1”0
而不是“1”(0)
?请查看有关Scala DSL的信息-