示例:
每次listAdapter请求新行时都会运行该代码:
if (textViewTitle != null)
textViewTitle.setTypeface(Controller.getInstance().widgetSettings.getBoldTypeface());
VS
if (textViewTitle != null
&& textViewTitle.getTypeface() != null
&& textViewTitle.getTypeface().equals(Controller.getInstance().widgetSettings.getBoldTypeface()))
textViewTitle.setTypeface(Controller.getInstance().widgetSettings.getBoldTypeface());
答案 0 :(得分:4)
这完全取决于创造和平等运作的成本。如果性能非常重要,那么根据需要进行基准测试应该是微不足道的。
如果性能不是那么重要,那么前者的可读性要大得多,并传达与后者相同的代码意图信息。
答案 1 :(得分:2)
确保textViewTitle
始终引用某些内容,以便您无需检查其存在。
答案 2 :(得分:0)
也许setTypeface
不只是设置属性,例如导致重绘?在这种情况下,除非改变某些内容,否则你要避免调用它
如果没有设置原始字体,则在第二个代码中BTW,它将不被设置。我不确定它是否有意。