免费特黄视频_国产精品久久久av_久久香蕉网_国产精彩视频_中文二区_国产成人一区

二維碼
企資網

掃一掃關注

當前位置: 首頁 » 企資快報 » 服務 » 正文

你沒有見過的 7種 for 循環優化,超好用

放大字體  縮小字體 發布日期:2021-08-26 02:59:30    作者:媒體小英    瀏覽次數:17
導讀

來源:blog.csdn.net/csdn_aiyang/article/details/75162134我們都經常使用一些循環耗時計算的操作,特別是for循環,她是一種重復計算的操作,如果處理不好,耗時就比較大,如果處理書寫得當將大大提高效率,下面總

來源:blog.csdn.net/csdn_aiyang/article/details/75162134

我們都經常使用一些循環耗時計算的操作,特別是for循環,她是一種重復計算的操作,如果處理不好,耗時就比較大,如果處理書寫得當將大大提高效率,下面總結幾條for循環的常見優化方式。

首先,我們初始化一個集合 list,如下:

List<String> list = new ArrayList<String>();

常規寫法

for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i));}
  • 優點:較常見,易于理解
  • 缺點:每次都要計算 list.size()

    優化1:數組長度提取出來

    int m = list.size();for (int i = 0; i < m; i++) {      System.out.println(list.get(i));}
  • 優點:不必每次都計算
  • 缺點:
  • m的作用域不夠小,違反了最小作用域原則;
  • 不能在for循環中操作list的大小,比如除去或新加一個元素。

    優化2:數組長度提取出來

    for (int i = 0, n = list.size(); i < n; i++) {    System.out.println(list.get(i));}
  • 優點:不必每次都計算 ,變量的作用域遵循最小范圍原則。
  • 缺點:

  • 不能在for循環中操作list的大小,比如除去或新加一個元素。

    優化3:采用倒序的寫法

    for (int i = list.size() - 1; i >= 0; i--) {System.out.println(list.get(i));}
  • 優點:不必每次都計算 ,變量的作用域遵循最小范圍原則。
  • 缺點:
  • 結果的順序會反;
  • 看起來不習慣,不易讀懂。
  • 適用場合:與顯示結果順序無關的地方:比如保存之前數據的校驗。

    遍歷

    for (Iterator<String> it = list.iterator(); it.hasNext();) {      System.out.println(it.next());}
  • 優點:簡潔。

    優化4:優化遍歷

    for (Object o : list) {     System.out.println(o);}
  • 優點:簡潔、結合泛型使用更簡潔。
  • 缺點:jdk1.4向下不兼容。

    優化5:循環嵌套外小內大原則

    for (int i = 0; i < 10; i++) {   for (int j = 0; j < 10000; j++) {   }}

    原因:嵌套循環應該遵循“外小內大”的原則,這就好比你復制很多個小文件和復制幾個大文件的區別,復制很多小文件速度是很慢的,而復制幾個大文件速度則快很多。

    優化6:循環嵌套提取不需要循環的邏輯

    //前: int a = 10, b = 11;  for (int i = 0; i < 10; i++) {               i = i * a * b;   }   //后: int c = a * b; for (int i = 0; i < 10; i++) {         i = i * c;  }

    優化7:異常處理寫在循環外面

    反例

    for (int i = 0; i < 10; i++) {     try {      } catch (Exception e) {      }}

    正例

    try {   for (int i = 0; i < 10; i++) {   }} catch (Exception e) { }
  •  
    (文/媒體小英)
    免責聲明
    本文僅代表作發布者:媒體小英個人觀點,本站未對其內容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內容,一經發現,立即刪除,需自行承擔相應責任。涉及到版權或其他問題,請及時聯系我們刪除處理郵件:weilaitui@qq.com。
     

    Copyright ? 2016 - 2025 - 企資網 48903.COM All Rights Reserved 粵公網安備 44030702000589號

    粵ICP備16078936號

    微信

    關注
    微信

    微信二維碼

    WAP二維碼

    客服

    聯系
    客服

    聯系客服:

    在線QQ: 303377504

    客服電話: 020-82301567

    E_mail郵箱: weilaitui@qq.com

    微信公眾號: weishitui

    客服001 客服002 客服003

    工作時間:

    周一至周五: 09:00 - 18:00

    反饋

    用戶
    反饋

    主站蜘蛛池模板: 欧美一级毛片在线播放 | 欧美精品成人 | 亚洲永久入口 | 黄色一级免费看 | 精品国产欧美 | 美女视频一区二区 | 蜜桃在线一区二区三区 | 亚洲九九 | 久久乐国产精品 | 一区二区电影网 | 在线婷婷 | 国产精品久久久久久久久久免费 | 国产精品毛片一区二区在线看 | 国产精久久久久久久妇剪断 | 男女羞羞视频在线观看 | 国产精品日日做人人爱 | 亚洲精品久久久久久久久久久久久 | 成人国产精品久久 | 久草资源在线 | 一级黄色片在线免费观看 | 黄色网址在线免费观看 | 二区中文字幕 | 一本大道久久a久久精二百 欧洲一区二区三区 | 亚洲视频在线免费观看 | 黄网免费| 韩日视频在线观看 | 久久久国产一区二区三区 | 成人免费区一区二区三区 | 欧美日韩精品一区二区三区四区 | 欧美性a视频 | 中文字幕视频在线观看 | 国产在线一区二区 | 国产区精品视频 | 欧美成人猛片aaaaaaa | 91原创视频在线观看 | 欧美精品一区二区三区在线播放 | 国产二区三区 | 欧美成人第一页 | 国产成人91 | 久久国产精品亚洲 | 精品综合视频 |