java arraylist遍历_java 遍历arrayList的四种方法

java arraylist遍历_java 遍历arrayList的四种方法importjava.util.ArrayList;importjava.util.Iterator;importjava.util.List;publicclassArrayListDemo{publicstaticvoidmain(Stringargs[]){Listlist=newArrayList();list.add(“luojiahui”);list.add(“…

大家好,又见面了,我是你们的朋友全栈君。

import java.util.ArrayList;

import java.util.Iterator;

import java.util.List;

public class ArrayListDemo {

public

static void main(String args[]){

List list = new

ArrayList();

list.add(“luojiahui”);

list.add(“luojiafeng”);

//方法1

Iterator it1 = list.iterator();

while(it1.hasNext()){

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

}

//方法2

for(Iterator it2 = list.iterator();it2.hasNext();){

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

}

//方法3

for(String tmp:list){

System.out.println(tmp);

}

//方法4

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

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

}

}

}

Java中ArrayList用法详解

听语音

|

浏览:3640

|

更新:2014-11-24 23:54

一键约师傅

百度师傅高质屏和好师傅,拯救你的碎屏机

System.Collections.ArrayList类是一个特殊的数组。通过添加和删除元素,就可以动态改变数组的长度。

工具/原料

Java

方法/步骤

1

一.优点

1。支持自动改变大小的功能

2。可以灵活的插入元素

3。可以灵活的删除元素

2

二.局限性

跟一般的数组比起来,速度上差些

3

三.添加元素

1.publicvirtualintAdd(objectvalue);

将对象添加到ArrayList的结尾处

ArrayListaList=newArrayList();

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

aList.Add(“e”);

内容为abcde

4

2.publicvirtualvoidInsert(intindex,objectvalue);

将元素插入ArrayList的指定索引处

ArrayListaList=newArrayList();

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

aList.Add(“e”);

aList.Insert(0,”aa”);

结果为aaabcde

5

3.publicvirtualvoidInsertRange(intindex,ICollectionc);

将集合中的某个元素插入ArrayList的指定索引处

ArrayListaList=newArrayList();

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

aList.Add(“e”);

ArrayListlist2=newArrayList();

list2.Add(“tt”);

list2.Add(“ttt”);

aList.InsertRange(2,list2);

结果为abtttttcde

6

四.删除

a)publicvirtualvoidRemove(objectobj);

从ArrayList中移除特定对象的第一个匹配项,注意是第一个

ArrayListaList=newArrayList();

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

aList.Add(“e”);

aList.Remove(“a”);

结果为bcde

7

2.publicvirtualvoidRemoveAt(intindex);

移除ArrayList的指定索引处的元素

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

aList.Add(“e”);

aList.RemoveAt(0);

结果为bcde

8

3.publicvirtualvoidRemoveRange(intindex,intcount);

从ArrayList中移除一定范围的元素。Index表示索引,count表示从索引处开始的数目

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

aList.Add(“e”);

aList.RemoveRange(1,3);

结果为ae

9

4.publicvirtualvoidClear();

从ArrayList中移除所有元素。

10

五.排序

a)publicvirtualvoidSort();

对ArrayList或它的一部分中的元素进行排序。

ArrayListaList=newArrayList();

aList.Add(“e”);

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

DropDownList1.DataSource=aList;//DropDownListDropDownList1;

DropDownList1.DataBind();

结果为eabcd

ArrayListaList=newArrayList();

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

aList.Add(“e”);

aList.Sort();//排序

DropDownList1.DataSource=aList;//DropDownListDropDownList1;

DropDownList1.DataBind();

结果为abcde

11

b)publicvirtualvoidReverse();

将ArrayList或它的一部分中元素的顺序反转。

ArrayListaList=newArrayList();

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

aList.Add(“e”);

aList.Reverse();//反转

DropDownList1.DataSource=aList;//DropDownListDropDownList1;

DropDownList1.DataBind();

结果为edcba

12

六.查找

a)publicvirtualintIndexOf(object);

b)publicvirtualintIndexOf(object,int);

c)publicvirtualintIndexOf(object,int,int);

返回ArrayList或它的一部分中某个值的第一个匹配项的从零开始的索引。没找到返回-1。

ArrayListaList=newArrayList();

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

aList.Add(“e”);

intnIndex=aList.IndexOf(“a”);//1

nIndex=aList.IndexOf(“p”);//没找到,-1

d)publicvirtualintLastIndexOf(object);

e)publicvirtualintLastIndexOf(object,int);

f)publicvirtualintLastIndexOf(object,int,int);

返回ArrayList或它的一部分中某个值的最后一个匹配项的从零开始的索引。

ArrayListaList=newArrayList();

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“a”);//同0

aList.Add(“d”);

aList.Add(“e”);

intnIndex=aList.LastIndexOf(“a”);//值为2而不是0

g)publicvirtualboolContains(objectitem);

确定某个元素是否在ArrayList中。包含返回true,否则返回false

13

七.其他

1.publicvirtualintCapacity{get;set;}

获取或设置ArrayList可包含的元素数。

2.publicvirtualintCount{get;}

获取ArrayList中实际包含的元素数。

Capacity是ArrayList可以存储的元素数。Count是ArrayList中实际包含的元素数。Capacity总是大于或等于Count。如果在添加元素时,Count超过Capacity,则该列表的容量会通过自动重新分配内部数组加倍。

如果Capacity的值显式设置,则内部数组也需要重新分配以容纳指定的容量。如果Capacity被显式设置为0,则公共语言运行库将其设置为默认容量。默认容量为16。

在调用Clear后,Count为0,而此时Capacity切是默认容量16,而不是0

3.publicvirtualvoidTrimToSize();

将容量设置为ArrayList中元素的实际数量。

如果不向列表中添加新元素,则此方法可用于最小化列表的内存系统开销。

若要完全清除列表中的所有元素,请在调用TrimToSize之前调用Clear方法。截去空ArrayList会将ArrayList的容量设置为默认容量,而不是零。

ArrayListaList=newArrayList();

aList.Add(“a”);

aList.Add(“b”);

aList.Add(“c”);

aList.Add(“d”);

aList.Add(“e”);//Count=5,Capacity=16,

aList.TrimToSize();//Count=Capacity=5;

END

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163080.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 股票实时数据接口api_股票开放接口api

    股票实时数据接口api_股票开放接口api免费股票数据API接口提供沪深、香港、美国股市信息。1.沪深股市2.香港股市3.美国股市4.香港股市列表5.美国股市列表6.深圳股市列表7.沪股列表API文档:https://www.juhe.cn/docs/api/id/21,申请获取APPKEY即可调用。示例代码PHP股票数据示例Python股票数据接口调用示例C#股票…

    2025年11月28日
    7
  • 【ArcGIS Pro微课1000例】0016:ArcGIS Pro 2.8浮雕效果地图制图案例教程[通俗易懂]

    【ArcGIS Pro微课1000例】0016:ArcGIS Pro 2.8浮雕效果地图制图案例教程[通俗易懂]ArcGISPro制作地图时可以制作出很多很炫的效果,比如地图阴影、地图晕渲效果、浮雕效果、三维效果等等。本实验讲解在ArcGISPro2.8中制作浮雕效果地图,效果如下所示:【参考阅读】:ArcGIS实验教程——实验四十四:ArcGIS地图浮雕效果制作完整案例教程1.加载矢量数据加载实验数据包data16.rar中的秦安县乡镇矢量数据:2.缓冲区分析点击【分析】选项卡,点击【缓冲区】。输入要素选择秦安县乡镇数据,选择输出要素路径,线性单位输入-0.4,单位为千米,侧类型选择.

    2025年9月15日
    7
  • vim编辑器显示行数过多_vim查看指定行

    vim编辑器显示行数过多_vim查看指定行设置ubuntu的vim编辑器显示行数,方法如下:1.打开终端输入:sudovi/etc/vim/vimrc,打开vim的配置文件(使用sudo可忽视vimrc文件的readonly属性);2.在配置文件中,找到最底行,点击键盘a键,打开输入模式;3.输入:setnu,设置显示行数;4.点击键盘esc键,退出输入模式,点击shift+:,输入:wq,保存退出;至此所有用vim打开的…

    2025年7月21日
    6
  • 下列那个类有获取PropertyDescriptor实例的方法_java获取properties的值

    下列那个类有获取PropertyDescriptor实例的方法_java获取properties的值一、软件包java.beans   包含与开发beans有关的类二、PropertyDescriptor  PropertyDescriptor描述JavaBean通过存储器方法导出的一个属性构造方法:PropertyDescriptor(StringpropertyName,Class&lt;?&gt;beanClass)PropertyDe…

    2022年9月30日
    4
  • linux mysql 远程连接_docker远程部署

    linux mysql 远程连接_docker远程部署Linux下远程连接MySQL数据库的方法踩坑笔记估计搞了一个多小时才把这个远程连接搞好。一台本地电脑,一台云服务器,都是linux系统。步骤1、在服务器端开启远程访问首先进入mysql数据库,然后输入下面两个命令:grantallprivilegeson*.*to’root’@’%’identifiedby’password’;flushprivileges;第一个*是数据库…

    2022年10月13日
    4
  • QQ微信都是腾讯的吗_腾讯为什么放弃qq

    QQ微信都是腾讯的吗_腾讯为什么放弃qq中国第一大APP是哪一个?当然是微信。那么第二大APP是哪一个呢?答案是已经21岁的互联网“化石级”产品——QQ!QQ的今天月活用户居然高达7.35亿,稍微观察一下就会发现一个奇怪的现象…

    2025年12月7日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号