91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JAVA中怎么利用for循環重復調用list.size()

發布時間:2021-08-02 15:50:50 來源:億速云 閱讀:296 作者:Leah 欄目:大數據

這篇文章給大家介紹JAVA中怎么利用for循環重復調用list.size(),內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

代碼如下:

public class Test2 {
    public static void main(String[] args) {

        List list = new ArrayList<String>();

        list.add("1");
        list.add("2");

        for (int i = 0; i < list.size(); i++) {
            System.out.println(i);
        }
    }
}

這里將list.size()放在了for循環里,按朋友的說法,這里應該會調用多次。

接下來我查看了字節碼發現,這里確實會調用多次list.size()方法,字節碼如下:

JAVA中怎么利用for循環重復調用list.size()

具體字節碼指令解析可查看:http://www.blogjava.net/DLevin/archive/2011/09/13/358497.html

接著查看了ArrayList調用size()方法的源碼是直接返回一個int 型的 size變量的,而這個size變量是每次新增和刪除都會改變這個size的值

JAVA中怎么利用for循環重復調用list.size()

結論:經過網友們熱情的探討與更正,for循環里會多次調用list.size(),list.size()方法會直接返回一個聲明在類中的size全局變量,雖然這個size會直接保存在堆中,但每次發生函數調用確實會發生壓棧出棧的性能開銷。

關于JAVA中怎么利用for循環重復調用list.size()就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

汶川县| 平邑县| 宝兴县| 安塞县| 麟游县| 伊通| 泰安市| 慈溪市| 林口县| 迁安市| 南丹县| 齐齐哈尔市| 邻水| 栖霞市| 桑日县| 阳谷县| 唐山市| 临猗县| 霍山县| 娄底市| 汤阴县| 莱州市| 宜昌市| 尼木县| 盐津县| 平陆县| 湘潭市| 灌南县| 铁岭县| 长子县| 枣庄市| 衡东县| 化德县| 梓潼县| 莱州市| 手游| 高尔夫| 若尔盖县| 察隅县| 台州市| 楚雄市|