Java中ifelse与switch语句的相对性能差异是什么?

Java中ifelse与switch语句的相对性能差异是什么?,第1张

Java中if / else与switch语句的相对性能差异是什么?

那是微优化和过早的优化,这是邪恶的。相当担心有关代码的可读性和可维护性。如果有两个以上的if/else块粘合在一起或者其大小不可预测,那么你可能会考虑使用一个switch声明。

另外,你也可以使用Polymorphism。首先创建一些接口:

public interface Action {     void execute(String input);}

并掌握其中的所有实现Map。你可以静态或动态地执行此 *** 作:

Map<String, Action> actions = new HashMap<String, Action>();

最后,将if/else或替换为switch类似的内容(将琐碎的检查,如nullpointers放在一边):

actions.get(name).execute(input);

它可能比if/else或慢一些switch,但是代码的可维护性至少要好得多。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4927120.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存