Java中for循环每次都通过list.size、str.length、length()获取数组或者字符串的长度是否消耗资源 您所在的位置:网站首页 java中size和length有什么区别 Java中for循环每次都通过list.size、str.length、length()获取数组或者字符串的长度是否消耗资源

Java中for循环每次都通过list.size、str.length、length()获取数组或者字符串的长度是否消耗资源

2024-07-15 22:12| 来源: 网络整理| 查看: 265

最近看到有同事在使用for循环的时候首先会将数组或者字符串的长度赋值给一个变量;在网上查了一下说是这样可以节约资源的消耗,真实的情况又是如何?让我们看下他们的源码来分析。

1.将数组的长度赋值给变量len List list = new ArrayList(); list.add(1); list.add(2); for(int i=0,len=list.size();i 0) System.arraycopy(elementData, index+1, elementData, index, numMoved); elementData[--size] = null; // clear to let GC do its work return oldValue; }

我们可以看到源码中定义了一个size变量,数组在新增或者删除元素的时候会直接修改这个变量的值,每次调用size方法的时候是直接去取size变量的,不会去重新计算数组的大小,所以对于list数组来说不会过多的消耗资源。

2.字符串类型的长度赋值给变量len String str = "asdf"; for(int i=0,len=str.length();i


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有