chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

幾條for循環(huán)的常見優(yōu)化方式

5jek_harmonyos ? 來源:CSDN博客 ? 作者:艾陽Blog ? 2021-08-20 09:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言我們都經(jīng)常使用一些循環(huán)耗時(shí)計(jì)算的操作,特別是for循環(huán),它是一種重復(fù)計(jì)算的操作,如果處理不好,耗時(shí)就比較大,如果處理書寫得當(dāng)將大大提高效率,下面總結(jié)幾條for循環(huán)的常見優(yōu)化方式。

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

List《String》 list = new ArrayList《String》();

方法一:最常規(guī)的不加思考的寫法

for (int i = 0; i 《 list.size(); i++) {

System.out.println(list.get(i));

}

優(yōu)點(diǎn):較常見,易于理解

缺點(diǎn):每次都要計(jì)算list.size()

方法二:數(shù)組長度提取出來

int m = list.size();

for (int i = 0; i 《 m; i++) {

System.out.println(list.get(i));

}

優(yōu)點(diǎn):不必每次都計(jì)算

缺點(diǎn):

m的作用域不夠小,違反了最小作用域原則

不能在for循環(huán)中操作list的大小,比如除去或新加一個(gè)元素

方法三:數(shù)組長度提取出來

for (int i = 0, n = list.size(); i 《 n; i++) {

System.out.println(list.get(i));

}

優(yōu)點(diǎn):不必每次都計(jì)算 ,變量的作用域遵循最小范圍原則

缺點(diǎn):

m的作用域不夠小,違反了最小作用域原則

不能在for循環(huán)中操作list的大小,比如除去或新加一個(gè)元素

方法四:采用倒序的寫法

for (int i = list.size() - 1; i 》= 0; i--) {

System.out.println(list.get(i));

}

優(yōu)點(diǎn):不必每次都計(jì)算 ,變量的作用域遵循最小范圍原則

缺點(diǎn):1、結(jié)果的順序會(huì)反 2、看起來不習(xí)慣,不易讀懂

適用場(chǎng)合:與顯示結(jié)果順序無關(guān)的地方:比如保存之前數(shù)據(jù)的校驗(yàn)

方法五:Iterator 遍歷

for (Iterator《String》 it = list.iterator(); it.hasNext();) {

System.out.println(it.next());

}

優(yōu)點(diǎn):簡潔

方法六:jdk1.5后的寫法

for (Object o : list) {

System.out.println(o);

}

優(yōu)點(diǎn):簡潔結(jié)合泛型使用更簡潔

缺點(diǎn):jdk1.4向下不兼容

方法七:循環(huán)嵌套外小內(nèi)大原則

for (int i = 0; i 《 10; i++) {

for (int j = 0; j 《 10000; j++) {

}

}

原因

792cdd24-013c-11ec-9bcf-12bb97331649.png

方法八:循環(huán)嵌套提取不需要循環(huán)的邏輯

//前:

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;

}

方法九:異常處理寫在循環(huán)外面

反例

for (int i = 0; i 《 10; i++) {

try {

} catch (Exception e) {

}

}

正例

try {

for (int i = 0; i 《 10; i++) {

}

} catch (Exception e) {

}

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 循環(huán)
    +關(guān)注

    關(guān)注

    0

    文章

    92

    瀏覽量

    16659
  • for
    for
    +關(guān)注

    關(guān)注

    0

    文章

    44

    瀏覽量

    16286

原文標(biāo)題:你真的會(huì)寫for循環(huán)嗎?來看看這些常見的for循環(huán)優(yōu)化方式

文章出處:【微信號(hào):harmonyos_developer,微信公眾號(hào):harmonyos_developer】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    功率循環(huán)基礎(chǔ)篇(二) —— 功率循環(huán)壽命曲線解讀

    功率循環(huán)壽命曲線是評(píng)估功率半導(dǎo)體器件(如 ?IGBT?模塊)在溫度交變應(yīng)力下長期可靠性的核心工具。該曲線通常以 結(jié)溫波動(dòng)幅度?ΔTj 為橫坐標(biāo),以器件達(dá)到指定失效判據(jù)前所經(jīng)歷的 循環(huán)次數(shù)?Nf 為
    的頭像 發(fā)表于 03-02 11:55 ?72次閱讀
    功率<b class='flag-5'>循環(huán)</b>基礎(chǔ)篇(二) —— 功率<b class='flag-5'>循環(huán)</b>壽命曲線解讀

    單片機(jī)大神的程序優(yōu)化流程

    據(jù)存儲(chǔ)器在不同的模塊中可以重復(fù)利用。 9、設(shè)定合適的編譯程序選項(xiàng) 許多編譯程序有幾種不同的優(yōu)化選項(xiàng),在使用前應(yīng)理解各優(yōu)化選項(xiàng)的含義,然后選用最合適的一種優(yōu)化方式。通常情況下一旦選用最
    發(fā)表于 12-25 07:38

    一文看懂AI大模型的并行訓(xùn)練方式(DP、PP、TP、EP)

    大家都知道,AI計(jì)算(尤其是模型訓(xùn)練和推理),主要以并行計(jì)算為主。AI計(jì)算中涉及到的很多具體算法(例如矩陣相乘、卷積、循環(huán)層、梯度運(yùn)算等),都需要基于成千上萬的GPU,以并行任務(wù)的方式去完成。這樣
    的頭像 發(fā)表于 11-28 08:33 ?1858次閱讀
    一文看懂AI大模型的并行訓(xùn)練<b class='flag-5'>方式</b>(DP、PP、TP、EP)

    請(qǐng)問Keil的優(yōu)化等級(jí)到底該如何選擇?

    內(nèi)聯(lián)(對(duì)小型函數(shù))。 循環(huán)優(yōu)化(如循環(huán)展開的有限形式)。 更積極的寄存器分配(變量可能不再駐留在內(nèi)存中)。 公共子表達(dá)式消除。 強(qiáng)度削弱等。 -O3 (最高速度優(yōu)化 / Optimi
    發(fā)表于 11-20 07:51

    循環(huán)發(fā)動(dòng)機(jī)高工況適應(yīng)性變幾何分流環(huán)設(shè)計(jì):前緣/壁面型線影響規(guī)律與優(yōu)化策略

    雙變循環(huán)發(fā)動(dòng)機(jī)作為一種創(chuàng)新的航空動(dòng)力系統(tǒng),其核心特征在于采用三涵道變循環(huán)氣動(dòng)熱力布局,通過精巧調(diào)節(jié)多個(gè)變幾何部件,實(shí)現(xiàn)在不同飛行狀態(tài)下的性能最優(yōu)化。這種發(fā)動(dòng)機(jī)的流道結(jié)構(gòu)相比傳統(tǒng)渦扇發(fā)動(dòng)機(jī)更為復(fù)雜,增加了第三涵道和一系列可調(diào)機(jī)構(gòu),
    的頭像 發(fā)表于 11-19 15:05 ?610次閱讀
    變<b class='flag-5'>循環(huán)</b>發(fā)動(dòng)機(jī)高工況適應(yīng)性變幾何分流環(huán)設(shè)計(jì):前緣/壁面型線影響規(guī)律與<b class='flag-5'>優(yōu)化</b>策略

    程序運(yùn)行速度很慢如何優(yōu)化?

    ;gt;外設(shè),內(nèi)存<->內(nèi)存)交給DMA,釋放CPU資源。 優(yōu)化算法: 選擇時(shí)間復(fù)雜度更低的算法。避免不必要的循環(huán)和重復(fù)計(jì)算。 減少函數(shù)調(diào)用開銷: 對(duì)于頻繁調(diào)用的小函數(shù)
    發(fā)表于 11-17 06:12

    人工智能行業(yè)如何使用for循環(huán)語句進(jìn)行循環(huán)

    人工智能行業(yè)可以使用以下是關(guān)于for循環(huán)在不同編程語言中的基本用法說明: Python中的for循環(huán): 主要用于遍歷序列(列表、元組、字符串等) 典型結(jié)構(gòu):for item in sequence
    的頭像 發(fā)表于 09-10 12:55 ?571次閱讀

    常見的物聯(lián)網(wǎng)連接方式有哪些?

    常見的物聯(lián)網(wǎng)連接方式
    發(fā)表于 09-08 08:26

    常見的變壓器接線組別的連接方式

    在電力系統(tǒng)中,變壓器起著變換電壓、傳輸電能的作用。而其繞組方式對(duì)于供電系統(tǒng)的運(yùn)行穩(wěn)定性和安全性具有重要意義。常見的變壓器繞組有YNyn0、Dyn11、Y/△、YNd11等,下面將對(duì)這些繞組進(jìn)行詳細(xì)解析。
    的頭像 發(fā)表于 09-03 14:07 ?3525次閱讀

    基礎(chǔ)篇3:掌握Python中的條件語句與循環(huán)

    通過學(xué)習(xí)條件語句和循環(huán),您能夠編寫出能夠根據(jù)不同情況和條件作出決策的Python程序。這些結(jié)構(gòu)在編程中非常常見,對(duì)于提高編程能力和構(gòu)建復(fù)雜程序至關(guān)重要。在接下來的學(xué)習(xí)和實(shí)踐中,不斷練習(xí)這些概念,您將能夠更自如地運(yùn)用它們來解決實(shí)際問題。
    發(fā)表于 07-03 16:13

    鴻蒙5開發(fā)寶藏案例分享---優(yōu)化應(yīng)用時(shí)延問題

    ** 問題 :5000條賬目查詢慢(157ms)優(yōu)化循環(huán)外獲取列索引 // 優(yōu)化前(循環(huán)內(nèi)重復(fù)調(diào)用) for(let i=0; i<5000; i++
    發(fā)表于 06-13 10:08

    一個(gè)串口上位機(jī),采用生產(chǎn)消費(fèi)結(jié)構(gòu),但是消費(fèi)循環(huán)運(yùn)行跟不上生產(chǎn)循環(huán),到時(shí)最終輸出支持不了高頻率傳輸。如何優(yōu)化

    ,消費(fèi)者采運(yùn)行了395次。而且從時(shí)間上來講,生產(chǎn)者平均運(yùn)行時(shí)間還更長。為什么消費(fèi)者反而運(yùn)行次數(shù)更少,是因?yàn)閘abview將資源更多分配給運(yùn)行時(shí)間長的循環(huán)嗎。要優(yōu)化的話,我應(yīng)該優(yōu)化生產(chǎn)者還是消費(fèi)者。
    發(fā)表于 06-11 09:26

    HarmonyOS優(yōu)化應(yīng)用內(nèi)存占用問題性能優(yōu)化

    可以避免圖片過大或過小導(dǎo)致的顯示問題,并提高應(yīng)用程序的用戶體驗(yàn)。 二、多種****方法 在日常開發(fā)中,常見的其他減少內(nèi)存方式有如下幾種: 使用虛引用(Weak Reference):在HarmonyOS
    發(fā)表于 05-21 11:27

    電子元器件的分類方式

    電子元器件可以按照不同的分類標(biāo)準(zhǔn)進(jìn)行分類,以下是一些常見的分類方式
    的頭像 發(fā)表于 04-16 14:52 ?2996次閱讀

    如何用幾條命令搞定Ubuntu系統(tǒng)的網(wǎng)絡(luò)配置

    在某些場(chǎng)景下,設(shè)備沒有顯示器或屏可以用,這時(shí)候通過命令行來設(shè)置網(wǎng)絡(luò)就變得特別重要了。本文將介紹如何用幾條命令搞定Ubuntu系統(tǒng)的網(wǎng)絡(luò)配置。
    的頭像 發(fā)表于 03-14 10:53 ?3778次閱讀
    如何用<b class='flag-5'>幾條</b>命令搞定Ubuntu系統(tǒng)的網(wǎng)絡(luò)配置