【发布时间】:2015-10-12 16:32:38
【问题描述】:
我在 Java 中有一个算法,它评估输入变量,如果它们不为空,它会进行一些处理并将其关联到映射中。例如:
myMap = new HashMap()
if ( a != null )
myMap.put( "a", process( a ) )
if ( b != null )
myMap.put( "b", process( b ) )
考虑到 Clojure 通常没有状态,我如何使用它以惯用的方式表达上面的算法?
还有一个信息是,如果变量为空,则不应评估进程函数,因为它会产生空指针异常。所以像 assoc-not-nil 这样的东西不会做:(
谢谢。
【问题讨论】:
标签: dictionary clojure