Tag: 编码风格

Java:用lambdas替换交换机。 值得?

在检查事件时,使用带有开关或代码的代码块是一件常见的事情。 当简单时它可以是干净的代码,但似乎仍然有比所需要的更多的行,并可以使用lambdas简化。 用if阻止: if(action == ACTION_1){ doAction1(); } else if(action == ACTION_2){ doAction2(); } else { doDefaultAction(); } 用开关闭锁: switch(action){ case ACTION_1: doAction1(); break; case ACTION_2: doAction2(); break; default: doDefaultAction(); } 使用实用程序类With lambda来阻止使用下面的代码: with(action) .when(ACTION_1, this::doAction1) .when(ACTION_2, this::doAction2) .byDefault(this::doDefaultAction) 使用lambdas的代码较少,但问题是:比其他人更容易阅读吗? 更容易维护? 关于性能lambda是最差的,但是对于性能不重要的情况,lambda版本比switch / if块更短。 那么,你怎么看? 也许有一种比这更短的Kotlin方法,我只专注于java,我喜欢Kotlin,但编译对于我的项目来说仍然太慢。 当块必须返回一个特定的值时,可以使用类似的工具类。 仅供参考,lambdas类是在这里,我没有检查错误,只是迅速为这个例子: public class With { private final T […]