Java 循环效率。如果继续或如果

标签 java loops performance if-statement continue

今天在完成我的任务时想到的问题是关于循环效率..

说吧。我有一个数组 {'a','x','a','a'} 以及一个应该避免“x”元素的循环 现在我想知道这两种方法在效率方面有何不同 - 不采用 while 或 do-while 或 for 循环区分

char[] arrExample = {'a','x','a','a'};
for(int idx = 0; idx<arrExample.length; idx++){
    if(arrExample[idx] == 'x')
        continue;

    System.out.println(arrExample[idx]);
}

普通循环看起来像这样

char[] arrExample = {'a','x','a','a'};
for(int idx = 0; idx<arrExample.length; idx++){
    if(arrExample[idx] != 'x')
        System.out.println(arrExample[idx]);
}

所以.. 专家评论很高兴。谢谢!

最佳答案

即使您使用未优化的字节码,它也几乎相同。只有两个真正的区别。首先是跳转语句的放置,但该跳转语句仍将执行相同的次数。此外,== 和 != 运算符都是原子运算符,执行两者所花费的时间相同。

如前所述,使用对您有意义的任何东西。但我不得不承认,continue 语句版本读起来相当笨拙。

关于Java 循环效率。如果继续或如果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3887769/

相关文章:

javascript - Vue循环嵌套JSON麻烦

javascript - 如何检查哪个资源导致网页加载缓慢

java - libgdx 简单的游戏很卡顿

java - macOS 上的 AudioInputStream : Pop noise with Java 1. 7 和 1.8 以及 8 位 wav 文件

java - 数组for循环菜鸟查询

python - 如何计算不循环需要循环多少次?

r - 是否可以遍历多个对象并调用循环中每个对象内的元素

java - 根据特定列对 Spark Dataframe 进行分区,并将每个分区的内容转储到 csv 上

java - 读取 zip 存档中的文本文件

javascript - 'duplicate' jQuery 伪类选择器的用途是什么?