循环概念
- 循环是在一定条件下进行循环的逻辑结构
循环组成
- 循环由循环入口、循环条件与循环体组成。
循环分类
- 已知次数循环
- for()循环、while循环、do……while循环
- 未知次数循环
- for each()循环、while循环、do……while循环
循环中断
- break 跳出这个循环,不再执行。
- continue 跳出本次循环,继续执行。
- 使用标签进行指定循环
a:for(){ for(){ break a; } } a:for(){ for(){ continue a; } }
循环时间优化
- 将循环的总次数提取出来
提取出来后为for(int i=0;i<list.size();i++){ }
优化前用时:47871for(int i=0,j=list.size();i<j;i++){ }
优化后用时:566 - 循环嵌套的外小内大修改
提取出来后为for(int i=0;i<10000;i++){ for(int i=0;i<10;i++){ } }
优化前用时:7541608for(int i=0;i<10;i++){ for(int i=0;i<10000;i++){ } }
优化后用时:4316 - 将无用逻辑放在循环外
提取出来后为for(int i=0;i<10;i++){ i = i * a * b; }
优化前用时:7541608int c=a*b; for(int i=0;i<10;i++){ i = i * c; }
优化后用时:4316 - 异常处理在循环中
提取出来后为for(int i=0;i<10;i++){ try{ }catch(Exception e){ } }
优化前用时:33916try{ for(int i=0;i<10;i++){ } }catch (Exception e){ }
优化后用时:489