Scala是一个更好的println
发布时间:2020-12-16 18:46:26 所属栏目:安全 来源:网络整理
导读:我经常发现自己做的事情如下: println(foo) 当我想做的时候: println foo 编译器不允许这样做. 另外,println是满口的,我真的只想说: echo foo 因此,在基础包对象中,我创建了println的echo版本: def echo(x: Any) = Console.println(x) 很容易,有回声应用
我经常发现自己做的事情如下:
println(foo) 当我想做的时候: println foo 编译器不允许这样做. 另外,println是满口的,我真的只想说: echo foo 因此,在基础包对象中,我创建了println的echo版本: def echo(x: Any) = Console.println(x) 很容易,有回声应用广泛,很棒. 现在,如何调用echo而不需要将Any包装在parens中? 解决方法object ? {def cho(s: Any) {println(s)}} ?cho "Hello world" 会保存你的手指. 它的工作原理是因为ε是Unicode Sm集中的数学符号,因此计为operator in Scala,所以当放置在字母数字字符旁边时不需要空格. 你也可以 object echo {def -(s: Any) {println(s)}} echo-"Hello world" IMO非常好用. YEARS LATER EDIT:另一个几乎解决方案,使用StringContext: implicit class PimpMyString(sc: StringContext) { def echo(args: Any*) = println(sc.raw(args: _*)) } echo"Hello World" (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |