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

广州微信网站建设市场智能建站

广州微信网站建设市场,智能建站,网站服务器在哪租,商丘市做网站的公司目录 一、List接口概述 二、List接口常见实现类 三、List接口特有方法: 1.元素操作 2. 查找元素位置 3. 子列表与不可变列表 四、List特有迭代器:ListIterator 1.特有的迭代方式 2.ListIterator接口中的常用方法: ⑴.void add(E e):在光标位置插入元素。(会移动…

目录

一、List接口概述

二、List接口常见实现类

三、List接口特有方法:

1.元素操作

2. 查找元素位置

3. 子列表与不可变列表

四、List特有迭代器:ListIterator

1.特有的迭代方式

2.ListIterator接口中的常用方法:

⑴.void add(E e):在光标位置插入元素。(会移动光标)

⑵.boolean hasPrevious();    判断当前光标指向位置的上一个位置是否存在元素。(只获取不移动)

⑶.E previous();            获取上一个元素(将光标向上移动一位,然后将光标指向的元素返回)(会移动光标)

⑷.int nextIndex();        获取光标指向的那个位置的下标(只获取不移动)

⑸.void set​(E e);            

五、List接口使用Comparator排序

1.回顾数组中自定义类型是如何排序的?

2.List集合的排序

⑴对Comparator提供一个实现类,并重写compare方法来指定比较规则。

⑵不单独写比较器,使用匿名内部类省代码


一、List接口概述

List 是Java集合框架中最重要的接口之一,继承自 Collection 接口,用于存储有序、可重复的元素集合。其核心特点包括:

  1. 有序性:元素按插入顺序存储,每个元素都有对应的下标(从 0 开始递增)。

  2. 可重复性:允许存储相同的元素(如多次添加 "Java")。

  3. 基于索引的操作:支持通过下标直接访问、插入、修改和删除元素。

二、List接口常见实现类

  • ArrayList:基于动态数组实现,查询效率高(时间复杂度 O(1)),增删效率较低(需移动元素)。

  • LinkedList:基于双向链表实现,增删效率高(时间复杂度 O(1)),查询效率较低(需遍历链表)。

  • Vector:线程安全的动态数组,性能较低(方法使用 synchronized 修饰)。

  • Stack:继承自 Vector,实现栈结构(后进先出)。

List<String> list = new ArrayList<>();
list.add(0, "Java");  // 插入到第一个位置

三、List接口特有方法:

(在Collection和SequencedCollection中没有的方法,只适合List家族使用的方法,这些方法都和下标有关系。)

1.元素操作

void add(int index, E element)

在指定下标插入元素,原位置及后续元素后移。

List<String> list = new ArrayList<>();
list.add(0, "Java");  // 插入到第一个位置

E set(int index, E element)
修改指定下标处的元素,返回被替换的旧值。

String oldValue = list.set(0, "Python");  // 将第一个元素改为"Python"

E get(int index)
根据下标获取元素,支持通过下标遍历集合。

for (int i = 0; i < list.size(); i++) {System.out.println(list.get(i));
}

E remove(int index)
删除指定下标处的元素,返回被删除的元素。

String removed = list.remove(0);  // 删除第一个元素

2. 查找元素位置

  • int indexOf(Object o)
    返回元素第一次出现的下标,未找到返回 -1

    int firstIndex = list.indexOf("Java");
  • int lastIndexOf(Object o)
    返回元素最后一次出现的下标。

    int lastIndex = list.lastIndexOf("Java");

3. 子列表与不可变列表

  • List<E> subList(int fromIndex, int toIndex)
    截取子列表(范围 [fromIndex, toIndex)),对子列表的修改会影响原集合。

    List<String> subList = list.subList(1, 3);  // 获取下标1到2的元素
  • static List<E> of(E... elements)可变长参数
    生成一个不可修改的列表(Java 9+)。

    List<String> immutableList = List.of("A", "B", "C");
    // immutableList.add("D");  // 抛出UnsupportedOperationException

四、List特有迭代器:ListIterator

1.特有的迭代方式

ListIterator<E> listIterator(); 获取List集合特有的迭代器(该迭代器功能更加强大,但只适合于List集合使用)

ListIterator<E> listIterator(int index); 从列表中的指定位置开始,返回列表中元素的列表迭代器

示例代码:

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;public class ListIteratorTest {public static void main(String[] args) {//创建集合ListList<String> names=new ArrayList<>();//添加元素names.add("zhangsan");names.add("lisi");names.add("wangwu");names.add("zhaoliu");//使用普通的通用迭代器遍历Iterator<String> it=names.iterator();while(it.hasNext()){String name=it.next();System.out.println(name);}//使用ListIterator进行遍历ListIterator<String> li = names.listIterator();while (li.hasNext()) {String name = li.next();System.out.println(name);}}
}

运行结果:

2.ListIterator接口中的常用方法:

http://www.dtcms.com/wzjs/334057.html

相关文章:

  • 网站的seo网站收录情况
  • 好网站建设公司北京官网seo
  • 谷歌独立站凡科建站官网登录
  • 单片机编程入门基础知识seo没什么作用了
  • 修改wordpress上传文件大小广州seo推广
  • 湖南长沙做网站网络产品及其推广方法
  • 中国外贸网站排名高端网站建设专业公司
  • 淘宝网站可以做百度快照吗郑州网络营销哪个好
  • 网站有哪些分类企业营销策划书范文
  • 广州培训 网站开发自己怎么做网站网页
  • 担路做网站今晚比分足球预测
  • c2c网站有哪些一键制作免费网站的app
  • 用什么做网站原型图百度下载安装 官方
  • 南沙滩做网站公司google谷歌搜索
  • 网站建设方案是什么意思seo快速排名上首页
  • 网站ui设计师招聘网上怎么推广产品
  • 做网站除了域名还需要什么关键词优化
  • 莒县网站设计seo怎样
  • 电商网站用什么框架做爱站查询工具
  • 怎么用ps做网站效果图免费招收手游代理
  • 做淘宝客的网站需要备案吗站内seo和站外seo区别
  • wordpress右上角登录seo网络搜索引擎优化
  • 平台推广是什么工作深圳网站设计专业乐云seo
  • 网站建设高端设计app推广注册赚钱
  • 网站放到国外空间上海网站制作开发
  • 平面设计案例网站推荐杭州seo中心
  • 政府网站 建设方案企业网站优化报告
  • 丹东网站开发公司二十条优化措施
  • 不懂的人做网站用织梦 还是 cms宁波seo营销平台
  • 做的比较好的电商网站北京优化互联网公司