锁定老帖子 主题:循环的优化
精华帖 (2) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-10-31
jieping310 写道 我只要先做个判断就可以啊 var != null && var.equals("123")这样跟 "123".equals(var);性能上有很大区别么? 两者的性能差别不是太大, 你的判断完全可以省略, 变成简洁、高效、易读的 "123".equals(var)【相比较你的判断】; 这种问题自己在平时可以注意一下,稍微思考,应该不是问题 |
|
返回顶楼 | |
发表时间:2008-10-31
还有一个小小的好处是,此时的var 可以是任何对象
即使是null 呵呵 |
|
返回顶楼 | |
发表时间:2008-11-01
传递的参数是null,是否意味着有错误呢
呵呵 让我想起了 鸵鸟算法 |
|
返回顶楼 | |
发表时间:2008-11-04
即使是3那样的代码,java编译器应该做了优化了吧,如果这样的代码都不能优化,那编译器也够失败的了
|
|
返回顶楼 | |
发表时间:2008-11-04
freish 写道 即使是3那样的代码,java编译器应该做了优化了吧,如果这样的代码都不能优化,那编译器也够失败的了 |
|
返回顶楼 | |
发表时间:2008-11-04
try{
for(int i=180000;i>=0;i--){ //快 } }catch{ } 按楼主这样做有个很大的问题。。。。如果i=100的时候抛了异常,100以后的就不能继续循环了。。。 |
|
返回顶楼 | |
发表时间:2008-11-04
taupo 写道 try{
for(int i=180000;i>=0;i--){ //快 } }catch{ } 按楼主这样做有个很大的问题。。。。如果i=100的时候抛了异常,100以后的就不能继续循环了。。。 那是当然的,楼主所说的是,当有异常时,循环就中断的话,最好将 try{}catch() 放在循环的外面。但,如果出现异常时,仍不能中断循环时,则 try..catch 就不能放在外面了。。。 |
|
返回顶楼 | |
发表时间:2008-11-04
拼接字符串的就不用说了。
第一条,我不信编译器或者JVM没有帮你优化 第二条,两个代码的行为不一样啊 |
|
返回顶楼 | |
发表时间:2008-11-04
受教了,不过个人感觉,除了研究所以外,做的东西都是给客户或客人的.
|
|
返回顶楼 | |
发表时间:2008-11-05
zgd 写道 拼接字符串的就不用说了。第一条,我不信编译器或者JVM没有帮你优化第二条,两个代码的行为不一样啊 你不信:是你的主观愿望,要真正测试才可以,第一条我已经说过,意义不大, 对于参加异常讨论的朋友,我有句话,非常严重的告诉你 【编译器编译的时候要对语句进行语法分析的】,所以你在编译我的事例的时候,也要分析我的语法,我前面有个词语【尽量】,不知道你们分析到了没有,如果你们没有分析到,所以,你们会报异常的,由此,我来写这个帖子来捕获你们的异常来了,O(∩_∩)O哈哈~,开个玩笑,do,do do |
|
返回顶楼 | |