java中List的用法_第1页
java中List的用法_第2页
java中List的用法_第3页
java中List的用法_第4页
java中List的用法_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、java 中 List 的用法和实例详解List 的用法List 包括 List 接口以及 List 接口的所有实现类。因为 List 接口实现了 Collection 接口,所以 List 接口拥有 Collection 接口提供的所有常用方法,又因为 List 是列表类型,所以 List接口还提供了一些适合于自身的常用方法,如表 1 所小。方注名标功能简介add(kicLEEfei.Otgectc可)用东向集舍的揩定密弓1位置添加对家.其他邓象的索引位苴怕对后移一位.索引位置从期始3ddAlb.皿_CoUtcHancoll)用率向隼合的指定残弓1粒苴添 B 指定第台中的所可咫尊用来活觊累合

2、中指定索弓1使苴的对象stD.inmdEX-Objectobj)用来将集合中指定法弓|处置的对聂修改为指定的对象窗Hintindex)用来获得指定索弓1便邑的对象utdexOOtyectcbj)用来获得指定对象的索引位宜.当存在多个时,返回第 T 的索引位置,当不存在时.返回-1用来恭甯指定对象的萦弓1位百.当存在多个时,返回爱后一个的索弓1位黄 当不存在时.返回-1UMefarotfO用来获得一个包含所有对空的1河仃旧酒实例bstltcratajCiniindex.)用来茯得三包含就,靛弓出置到房后的SIIEM型实例钊bL诅峋tfromlBdex.mcolndex)通过戴取他起始索引位置止的

3、血地含j至假比索弓|位亘血n加工(不笆含娥科名鼐百%前表 1List 接口定义的常用方法及功能从表 1 可以看出,List 接口提供的适合于自身的常用方法均与索引有关,这是因为 List 集合为列表类型,以线性方式存储对象,可以通过对象的索引操作对象。List 接口的常用实现类有 ArrayList 和 LinkedList,在使用 List 集合时,通常情况下声明为List 类型,实例化时根据实际情况的需要,实例化为 ArrayList 或 LinkedList,例如:Listl=newArrayList();/利用 ArrayList 类实例化List 集合Listl2=newLinked

4、List();/利用 LinkedList 类实例化 List 集合1. add(intindex,Objectobj)方法和 set(intindex,Objectobj)方法的区别在使用 List 集合时需要注意区分 add(intindex,Objectobj)方法和 set(intindex,Objectobj)方法,前者是向指定索引位置添加对象,而后者是修改指定索引位置的对象,例如执行下面的代码:srccommwqTestCollection.java 关键代码:publicstaticvoidmain(Stringargs)Stringa=A,b=B,c=C,d=D,e=E;Lis

5、tlist=newLinkedList();list.add(a);list.add(e);list.add(d);list.set(1,b);/将索引位置为 1 的对象 e 修改为对象 blist.add(2,c);/将对象 c 添加到索引位置为 2 的位置 Iteratorit=list.iterator();while(it.hasNext()System.out.println(it.next();在控制台将输出如下信息:ABCD因为 List 集合可以通过索引位置访问对象,所以还可以通过 for 循环遍历List 集合,例如遍历上面代码中的 List 集合的代码如下:srccommw

6、qTestCollection.java 关键代码:for(inti=0;ilist.size();i+)System.out.println(list.get(i);/索引位置的对象srccommwqTestCollection.javapackagecom.mwq;importjava.util.ArrayList;importjava.util.LinkedList;importjava.util.Iterator;importjava.util.List;publicclassTestCollectionpublicstaticvoidmain(Stringargs)System.ou

7、t.println(开始:);Stringa=A,b=B,c=C,d=D,e=E;Listlist=newLinkedList();list.add(a);list.add(e);list.add(d);利用 get(intindex)方法获得指定完整代码如下:list.set(1,b);/将索引位置为 1 的对象 e 修改为对象 blist.add(2,c);/将对象 c 添加到索引位置为 2 的位置 Iteratorit=list.iterator();while(it.hasNext()System.out.println(it.next();/for(inti=0;ilist.size

8、();i+)/System.out.println(list.get(i);/利用get(intindex)方法获得指定索引位置的对象/System.out.println(结束!);2. indexOf(Objectobj)方法和 lastIndexOf(Objectobj)方法的区别在使用 List 集合时需要注意区分 indexOf(Objectobj)方法和 lastIndexOf(Objectobj)方法,前者是获得指定对象的最小的索引位置,而后者是获得指定对象的最大的索引位置,前提条件是指定的对象在List 集合中具有重复的对象,否则如果在 List 集合中有且仅有一个指定的对象,

9、则通过这两个方法获得的索引位置是相同的,例如执行下面的代码:srccommwqTestCollection.java 关键代码:publicstaticvoidmain(Stringargs)Stringa=A,b=B,c=C,d=D,repeat=Repeat;Listlist=newArrayList();list.add(a);/索引位置为 0list.add(repeat);/索引位置为 1list.add(b);/索引位置为 2list.add(repeat);/索引位置为 3list.add(c);/索引位置为 4list.add(repeat);/索引位置为 5list.add(

10、d);/索引位置为 6System.out.println(list.indexOf(repeat);System.out.println(list.lastIndexOf(repeat);System.out.println(list.indexOf(b);System.out.println(list.lastIndexOf(b);srccommwqTestCollection.java 完整代码如下:packagecom.mwq;importjava.util.ArrayList;importjava.util.List;publicclassTestCollectionpublicst

11、aticvoidmain(String口args)System.out.println(开始:);Stringa=A,b=B,c=C,d=D,repeat=Repeat;Listlist=newArrayList();list.add(a);/索引位置为 0list.add(repeat);/索引位置为 1list.add(b);/索引位置为 2list.add(repeat);/索引位置为 3list.add(c);/索引位置为 4list.add(repeat);/索引位置为 5list.add(d);/索引位置为 6System.out.println(list.indexOf(repe

12、at);System.out.println(list.lastIndexOf(repeat);System.out.println(list.indexOf(b);System.out.println(list.lastIndexOf(b);System.out.println(结束!);在控制台将输出如下信息:15223. subList(intfromIndex,inttoIndex)方法在使用 subList(intfromIndex,inttoIndex)方法截取现有 List 集合中的部分对象生成新的 List 集合时,需要注意的是,新生成的集合中包含起始索引位置代表的对象,但是不

13、包含终止索引位置代表的对象,例如执行下面的代码:srccommwqTestCollection.java 关键代码:publicstaticvoidmain(String口args)Stringa=A,b=B,c=C,d=D,e=E;Listlist=newArrayList();list.add(a);/索引位置为 0list.add(b);/索引位置为 1list.add(c);/索引位置为 2list.add(d);/索引位置为 3list.add(e);/索引位置为 4list=list.subList(1,3);/利用从索引位置 1 到 3 的对象重新生成一个 List 集合for(

14、inti=0;ilist.size();i+)System.out.println(list.get(i);srccommwqTestCollection.java 完整代码:packagecom.mwq;importjava.util.ArrayList;importjava.util.List;publicclassTestCollectionpublicstaticvoidmain(Stringargs)System.out.println(开始:);Stringa=A,b=B,c=C,d=D,e=E;Listlist=newArrayList();list.add(a);/索引位置为

15、0list.add(b);/索引位置为 1list.add(c);/索引位置为 2list.add(d);/索引位置为 3list.add(e);/索引位置为 4list=list.subList(1,3);/利用从索引位置 1 到 3 的对象重新生成一个 List 集合for(inti=0;ilist.size();i+)System.out.println(list.get(i);System.out.println(结束!);在控制台将输出如下信息:BClist 中可以添加任何对象,我可以给你举个例子:classPerson)上面定义了一个 Person 类,下面看好如何使用 ListPers

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论