【发布时间】:2011-03-26 02:48:16
【问题描述】:
我写了一个java应用程序来处理日志文件有数百万行 程序中有这样的伪代码
if(optionA is On)
call object A's method
if(optionB is On)
call object B's method
if(optionC is On)
call object C's method
...
IF 中的选项是从配置文件中获取的配置值 这个伪代码在每个日志行中调用,所以调用了百万次
由于速度和简单性,我想删除这个多 IF。 看到这么多的IF让我很不愉快。 有没有一个很好的方法来解决这个烦人的 IF?
【问题讨论】:
-
您是否担心 1) 方法的可扩展性(您不断添加
if语句),2) 方法的美学(您不想阅读所有这些语句),3 )方法的性能(它太慢了),还是这些的某种组合?如果您更清楚为什么要减少ifs 的数量,我们或许可以提供更多帮助 -
不懂java,但你不能使用接口/虚拟方法并为对象和选项使用列表。像
for(i=0;i<objectlist.count();i++) if(option[i])objectlist[i].method();
标签: java optimization if-statement