当前位置: 首页 > news >正文

成都网页设计的网站建设百度推广怎么提高关键词排名

成都网页设计的网站建设,百度推广怎么提高关键词排名,晋江网站建设费用,万宁网站建设有人说在for循环之前用一个局部变量先获取到list.size()、str.length(),然后在for循环的判断条件里通过这个局部变量替换list.size()、str.length()会节省数据计算的时间。事实真的是这样吗?下面就为大家解答这个问题。 说明:此文章针对Andro…

有人说在for循环之前用一个局部变量先获取到list.size()、str.length(),然后在for循环的判断条件里通过这个局部变量替换list.size()、str.length()会节省数据计算的时间。事实真的是这样吗?下面就为大家解答这个问题。

说明:此文章针对Android SDK 进行说明。
List.size()

首先我们看一下List接口,我们知道.size()方法是List接口的一个方法,返回一个int类型的值。

public interface List<E> extends Collection<E> {//省略部分代码.../*** Returns the number of elements in this {@code List}.** @return the number of elements in this {@code List}.*/public int size();//省略部分代码...
}



接口中的方法都是没有具体实现的,我们下面看一下List的实现类ArrayList(LinkList也一样,这里讲ArrayList)。我们先看下ArrayList类中的size()方法是如何实现的:
 

public class ArrayList<E> extends AbstractList<E> implements Cloneable, Serializable, RandomAccess {//省略部分代码.../*** Returns the number of elements in this {@code ArrayList}.** @return the number of elements in this {@code ArrayList}.*/@Override public int size() {return size;}//省略部分代码...
}

复制代码



我们看到ArrayList里的size()方法直接return了一个size,通过查看发现size是ArrayList类中的一个int类型的成员变量,代表list结合中的元素数量。
 

    /*** The number of elements in this list.*/int size;



通过跟踪size变量发现在ArrayList类中的add,remove方法中都会动态改变size的大小。
 

复制代码

 /*** Adds the specified object at the end of this {@code ArrayList}.** @param object*            the object to add.* @return always true*/@Override public boolean add(E object) {Object[] a = array;int s = size;if (s == a.length) {Object[] newArray = new Object[s +(s < (MIN_CAPACITY_INCREMENT / 2) ?MIN_CAPACITY_INCREMENT : s >> 1)];System.arraycopy(a, 0, newArray, 0, s);array = a = newArray;}a[s] = object;size = s + 1; // 添加元素size增加modCount++;return true;}
.../*** Removes the object at the specified location from this list.** @param index*            the index of the object to remove.* @return the removed object.* @throws IndexOutOfBoundsException*             when {@code location < 0 || location >= size()}*/@Override public E remove(int index) {Object[] a = array;int s = size;if (index >= s) {throwIndexOutOfBoundsException(index, s);}@SuppressWarnings("unchecked") E result = (E) a[index];System.arraycopy(a, index + 1, a, index, --s - index); //删除元素 size--a[s] = null;  // Prevent memory leaksize = s;modCount++;return result;}

复制代码



通过上述代码我们知道通过ArrayList中的.size()方法获取集合长度,会直接返回一个集合元素数量的变量值,而不会每次调用size()方法都重新计算下集合的元素数量再返回。下面我们在看下String.length()。
String.Length()

我们看下java.lang包下得String类,首先找到String类中的.length()方法:

复制代码

/*** An immutable sequence of UTF-16 {@code char}s.* See {@link Character} for details about the relationship between {@code char} and* Unicode code points.** @see StringBuffer* @see StringBuilder* @see Charset* @since 1.0*/
public final class String implements Serializable, Comparable<String>, CharSequence {//省略部分代码...private final int count;//省略部分代码.../*** Returns the number of {@code char}s in this string. If this string contains surrogate pairs,* this is not the same as the number of code points.*/public int length() {return count;}//省略部分代码...
}

复制代码



我们发现跟ArrayList中的size()方法一样,返回了一个int类型的成员变量count。这个count是怎么赋值的我也不清楚,有兴趣的可以去研究一下。

#总结
综上所述,我们就可以知道List.size()和String.length()方法都是直接返回一个int类型变量值,而不会花费时间再去计算大小后返回,所以放心的去使用size()和length()方法吧。

http://www.hrbkazy.com/news/57237.html

相关文章:

  • 微信公众平台开发流程郑州seo优化外包
  • 东莞微信网站建设代理个人开发app去哪里接广告
  • 网页设计动态网站建设营销推广外包公司
  • 做房地产什么网站好win10优化大师免费版
  • 中国著名的个人网站seo工资多少
  • 阿里巴巴上做网站要多少钱seo关键词如何设置
  • 宁津做网站公司百度收录的网站多久更新一次
  • 典型的电子商务网站有哪些免费手游推广代理平台渠道
  • phpcms可以做网站吗官网优化 报价
  • wordpress 段落背景镇江网站seo
  • 怎么做外贸网站优化网上推广方式
  • 如何运营自己的网店上海快速排名优化
  • 免费视频网站制作seo排名工具外包
  • 做推广的网站需要注意什么免费精准客源
  • 建筑公司取名seo实战技巧100例
  • 优秀的网站首页布局百度快照推广效果怎样
  • 软件技术是做什么的廊坊百度seo公司
  • 网站开发验收标准成功营销案例100例
  • cms代码做网站百度公司介绍
  • 云盘做网站文件新闻头条最新消息今天发布
  • 邯郸公司做网站推广游戏怎么拉人最快
  • 2323wan网页游戏网站关键词排名优化推广软件
  • 昆明网站排名优化公司哪家好关键词排名是什么意思
  • w3c网站开发哪家网络推广好
  • 无锡网站优化价格廊坊关键词优化平台
  • 手机网站建设教程如何建立企业网站
  • 男女一起做暖暖网站网站你应该明白我的意思吗
  • 做电影网站会不会侵权今日头条新闻在线看
  • 深圳网站制作网络营销的策划流程
  • 纯图片网站专业网络推广公司排名