【零基础学Java】—List集合(三十九)

简介: 【零基础学Java】—List集合(三十九)

java.util.list接口 extends Collection接口

list接口的特点:

1、有序的集合,存储元素和取出元素的顺序是一致的(存储123 取出321)

2、有索引,包含了一些带索引的方法

3、允许重复的元素

list接口中带索引的方法有:

  • public void add(int index,E element):指定的元素,添加到该集合的指定位置上
  • public E get(int index):返回集合指定位置的元素
  • public E remove(int index):移除列表中指定的元素,返回的是被移除的元素
  • public E set(int index,E element):用指定的元素替换集合中指定位置的元素,返回值是更新前的元素

注意:操作索引的时候,一定要防止索引越界异常

IndexOutOfBoundsException :索引越界异常 集合会报

ArrayIndexOutOfBoundsException:数组越界异常

StringIndexOutOfBoundsException:字符串索引越界异常

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
/**
 * @author :CaiCai
 * @date : 2022/4/13 11:02
 */
/*
java.util.list接口 extends Collection接口
list接口的特点:
1、有序的集合,存储元素和取出元素的顺序是一致的(存储123 取出321)
2、有索引,包含了一些带索引的方法
3、允许重复的元素
list接口中带索引的方法有:
public void add(int index,E element):指定的元素,添加到该集合的指定位置上
public E get(int index):返回集合指定位置的元素
public E remove(int index):移除列表中指定的元素,返回的是被移除的元素
public E set(int index,E element):用指定的元素替换集合中指定位置的元素,返回值是更新前的元素
注意:操作索引的时候,一定要防止索引越界异常
IndexOutOfBoundsException :索引越界异常 集合会报
ArrayIndexOutOfBoundsExceptionL:数组越界异常
StringIndexOutOfBoundsException:字符串索引越界异常
 */
public class demo01 {
    public static void main(String[] args) {
        //创建一个list集合对象 多态
        List<String> list=new ArrayList<>();
        //使用add向集合中添加元素
         list.add("a");
         list.add("b");
         list.add("c");
         list.add("a");
        System.out.println(list);//[a, b, c, a]
        //public void add(int index,E element):指定的元素,添加到该集合的指定位置上
        list.add(3,"lily");
        System.out.println(list);
        //public E remove(int index):移除列表中指定的元素,返回的是被移除的元素
        String removeE=list.remove(2);
        System.out.println("被移除的元素:"+removeE);//c
        System.out.println(list);//[a, b, lily, a]
        //public E set(int index,E element):用指定的元素替换集合中指定位置的元素,返回值是更新前的元素
        //把最后一个a替换成为大写的A
         String setRemove= list.set(3,"A");
         System.out.println("被替换的元素是:"+setRemove);
         System.out.println(list);//[a, b, lily, A]
    //list集合遍历的三种方式
        for (int i = 0; i <list.size() ; i++) {
            //public E get(int index);返回集合中指定位置的元素
            String s =list.get(i);
            System.out.println(s);
        }
        System.out.println("===============");
        //使用迭代器
        Iterator<String> it=list.iterator();
        while(it.hasNext()){
            String s=it.next();
            System.out.println(s);
        }
        System.out.println("============");
        //使用增强for
        for (String s : list) {
            System.out.println(s);
        }
    }
}


相关文章
|
12天前
|
Java 大数据 API
Java Stream API:现代集合处理与函数式编程
Java Stream API:现代集合处理与函数式编程
174 100
|
12天前
|
Java API 数据处理
Java Stream API:现代集合处理新方式
Java Stream API:现代集合处理新方式
174 101
|
25天前
|
算法 Java
50道java集合面试题
50道 java 集合面试题
|
16天前
|
存储 Java Go
对比Java学习Go——函数、集合和OOP
Go语言的函数支持声明与调用,具备多返回值、命名返回值等特性,结合`func`关键字与类型后置语法,使函数定义简洁直观。函数可作为一等公民传递、赋值或作为参数,支持匿名函数与闭包。Go通过组合与接口实现面向对象编程,结构体定义数据,方法定义行为,接口实现多态,体现了Go语言的简洁与高效设计。
|
2月前
|
存储 缓存 安全
Java集合框架(二):Set接口与哈希表原理
本文深入解析Java中Set集合的工作原理及其实现机制,涵盖HashSet、LinkedHashSet和TreeSet三大实现类。从Set接口的特性出发,对比List理解去重机制,并详解哈希表原理、hashCode与equals方法的作用。进一步剖析HashSet的底层HashMap实现、LinkedHashSet的双向链表维护顺序特性,以及TreeSet基于红黑树的排序功能。文章还包含性能对比、自定义对象去重、集合运算实战和线程安全方案,帮助读者全面掌握Set的应用与选择策略。
150 23
|
2月前
|
存储 缓存 安全
Java集合框架(三):Map体系与ConcurrentHashMap
本文深入解析Java中Map接口体系及其实现类,包括HashMap、ConcurrentHashMap等的工作原理与线程安全机制。内容涵盖哈希冲突解决、扩容策略、并发优化,以及不同Map实现的适用场景,助你掌握高并发编程核心技巧。
|
2月前
|
安全 Java 开发者
Java集合框架:详解Deque接口的栈操作方法全集
理解和掌握这些方法对于实现像浏览器后退功能这样的栈操作来说至关重要,它们能够帮助开发者编写既高效又稳定的应用程序。此外,在多线程环境中想保证线程安全,可以考虑使用ConcurrentLinkedDeque,它是Deque的线程安全版本,尽管它并未直接实现栈操作的方法,但是Deque的接口方法可以相对应地使用。
121 12
|
2月前
|
存储 NoSQL Java
Java Stream API:集合操作与并行处理
Stream API 是 Java 8 提供的集合处理工具,通过声明式编程简化数据操作。它支持链式调用、延迟执行和并行处理,能够高效实现过滤、转换、聚合等操作,提升代码可读性和性能。
|
2月前
|
存储 安全 Java
Java集合框架(一):List接口及其实现类剖析
本文深入解析Java中List集合的实现原理,涵盖ArrayList的动态数组机制、LinkedList的链表结构、Vector与Stack的线程安全性及其不推荐使用的原因,对比了不同实现的性能与适用场景,帮助开发者根据实际需求选择合适的List实现。
|
3月前
|
存储 缓存 NoSQL
java 集合入门基础理论的核心概念与实用长尾知识
本文介绍了Java集合框架的基础理论知识,包括单列集合(List、Set、Queue)和双列集合(Map)的特点及常用实现类(如ArrayList、HashSet、HashMap等)。详细讲解了集合的遍历方式(迭代器、增强for循环、Lambda表达式)和典型应用场景(如数据去重、键值存储等)。通过具体代码示例,帮助初学者理解集合框架的核心概念和实际应用,为Java编程中的数据存储与管理提供基础指导。
96 0

热门文章

最新文章