技术问答-9 java中的集合(4)-List
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了技术问答-9 java中的集合(4)-List,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2754字,纯文字阅读大概需要4分钟。
内容图文
![技术问答-9 java中的集合(4)-List](/upload/InfoBanner/zyjiaocheng/593/b1ff548a0f464b58be89741a9f1f49e3.jpg)
List
一、List是什么
- List是有序集合,有时也被称为序列,可以有重复的元素
- List相对于集合Collection扩展了一些方法 :位置访问、搜索、迭代、视图
- 与Set一样,List要求强化equal和hashCode以使两个集合元素可以进行逻辑上的比较,而不考虑他们具体实现类的类型。当两个List有相同元素时,他们被认为是相等的
二、新增方法
返回值 | 方法 | 描述 |
---|---|---|
boolean | add(int,E) | 向集合指定索引处插入一个对象,该索引必须与集合连贯 |
boolean | addAll(i,Collection<? extend E>) | 向集合指定索引处插入一个集合的所有元素,该索引必须与集合连贯 |
E | set(int,E) | 将集合指定索引处元素修改为指定对象,并返回旧对象 |
boolean | remove(int) | 移除指定索引处元素,集合元素数没有改变时返回false |
void | replaceAll(UnaraOperator< E>) | 按照指定一元运算对所有元素进行修改 |
Object | get(int) | 获取指定索引处元素 |
int | indexOf(Object) | 从集合中查找给定对象第一次出现的索引,没有时返回-1 |
int | lastIndexOf(Object) | 从集合中查找最后一次出现的索引,没有时返回-1 |
List< E> | subList(int,int) | 返回指定索引之间元素组成的视图,不包括结束索引元素 |
ListIterator< E> | listiterator() | 获取集合序列迭代器 |
ListIterator< E> | listIterator(int) | 获取集合序列迭代器,并将指针指向给定元素前 |
void | sort(Comparator) | 通过给定的排序器进行排序 |
什么叫与集合连贯?
- 集合size() ==0 与集合连贯的下标就是0
- 集合size() == 1 与集合连贯的下标就是0,1
- 通俗的说就是集合中已经存在元素的元素下标和集合size()处(下一个元素要存储的下标)
replaceAll、listiterator 使用方法
package along;import java.util.ArrayList;import java.util.List;import java.util.ListIterator;import java.util.function.UnaryOperator;public class javaTest { public static void main(String[] args) { //replaceAll使用 List<String> list = new ArrayList<>(); list.add("旧值"); list.replaceAll(new UnaryOperator<String>() { public String apply(String t) { return "新值"; } }); System.out.println(list); //[新值] List<Integer> listI = new ArrayList<>(); listI.add(11); listI.add(22); listI.add(33); ListIterator<Integer> it = listI.listIterator(); //正向遍历 11 22 33 while(it.hasNext()){ System.out.print("下标:"+it.nextIndex()+" "); System.out.print("值:"+it.next()+"\t"); } //指针指向集合尾部元素后时,nextIndex()返回list.size(); System.out.println("指向尾部元素:"+it.nextIndex()); //反向遍历 33 22 11 while(it.hasPrevious()){ System.out.print("下标:"+it.previousIndex()+" "); System.out.print("值:"+it.previous()+"\t"); } //指针指向集合头部元素前时,previousIndex()返回-1; System.out.println("指向尾部元素:"+it.previousIndex()); //add(E)方法会在迭代的时候,向指针移动的方向后面添加一个元素,而set(E)方法将当前迭代的元素修改为给定对象. it.add(88);//会在下标0处添加 88 System.out.println(listI); //it.set(99);//会报错 System.out.println(it.next()); it.set(99);//会把11修改为99 System.out.println(listI); }}
内容总结
以上是互联网集市为您收集整理的技术问答-9 java中的集合(4)-List全部内容,希望文章能够帮你解决技术问答-9 java中的集合(4)-List所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。