我正在学习Scala并遇到以下任务 - 如果string为空,则返回null,否则返回大写.
Apache Commons中有两个功能组合在一起解决了这个问题.在Haskell中,我只想写:
upperCaseOrNull = StringUtils.stripToNull . StringUtils.upperCase
Run Code Online (Sandbox Code Playgroud)
但是我找不到在Scala中做一个简单而干净的函数组合的方法.我发现的最短路径如下:
def upperCaseOrNull (string:String) = StringUtils.stripToNull (StringUtils.upperCase(string))
def upperCaseOrNull = StringUtils.stripToNull _ compose StringUtils.upperCase _
Run Code Online (Sandbox Code Playgroud)
Scala是否提供更简洁的语法,可能没有所有这些下划线?