java中List集合三种获取集合元素方式

2023-11-20

java中List集合三种获取集合元素方式

1.for
2.迭代器
3.增强for循环

List集合常用方法
List作为Collection集合的子接口,不但继承了Collection接口中的全部方法,而且还增加了一些根据元素索引来操作集合的特有方法,如下:

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

List接口特点:

1.它是一个元素存取有序的集合。例如,存元素的顺序是11、22、33。那么集合中,元素的存储就是按照11、 22、33的顺序完成的)。
2. 它是一个带有索引的集合,通过索引就可以精确的操作集合中的元素(与数组的索引是一个道理)。
3. 集合中可以有重复的元素,通过元素的equals方法,来比较是否为重复的元素。

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 * @author wh
 * @date 2021年08月20日7:54
 */
public class demo {
    public static void main(String[] args) {
        List<String> list=new  ArrayList<String>();
        list.add("小明");
        list.add("小红");
        list.add("小华");
        list.add("小亮");
        //普通for集合获取元素
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

        System.out.println("=============");
        //使用迭代器获取元素
        Iterator<String> iterator = list.iterator();
        while (iterator.hasNext()){ //判断迭代器是否有元素
            String s = iterator.next();//获取集合下一个元素
            System.out.println(s);
        }

         System.out.println("==============");
        //增强for循环获取元素,最为便捷
        for (String s : list) {
            System.out.println(s);
        }

    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java中List集合三种获取集合元素方式 的相关文章

  • Java:获取当前正在执行的Method对应的对象

    将当前正在执行的方法作为 Method 对象获取的最优雅的方法是什么 我的第一个明显的方法是在辅助类中使用静态方法 该方法将加载当前线程堆栈 获取正确的堆栈跟踪元素 并根据其信息构造 Method 元素 有没有更优雅的方法来实现这一目标 这
  • 如何用Java写入OS系统日志?

    Mac OS 有一个名为 Console 的应用程序 其中包含记录的消息 错误和故障 我相信 Windows 中的等效项是事件查看器 我想 Linux 上也有一个 但我不知道它是什么 也不知道它在哪里 是否可以像这样从 Java 输出获取消
  • 如何使用 Java 将 HTML 内容转换为 PDF 而不丢失格式?

    我有一些 HTML 内容 包括格式化标签 例如strong 图像等 在我的 Java 代码中 我想将此 HTML 内容转换为 PDF 文档 而不丢失 HTML 格式 有没有办法用 Java 来实现 使用 iText 或任何其他库 I use
  • 重构——套接字中的良好实践——简单的服务器-客户端 Swing 应用程序

    我使用单例和观察者模式编写了一个带有 Swing 接口的简单服务器 客户端程序 每个客户端都连接到服务器并可以发送消息 服务器将其收到的消息转发给其余的客户端 客户端使用 GUI 允许它们随时连接和断开与服务器的连接 该程序运行得很好 因为
  • 如何防止在 CXF Web 服务客户端中生成 JAXBElement

    我正在尝试使用 CXF 创建一个 Web 服务客户端来使用 WCF Web 服务 当我使用 wsdl2java 时 它生成具有 JAXBElement 类型而不是 String 的对象 我读到有关使用 jaxb bindings xml 文
  • FFmpeg 不适用于 android 10,直接进入 onFailure(String message) 并显示空消息

    我在我的一个项目中使用 FFmpeg 进行视频压缩 在 Android 10 Google Pixel 3a 上 对于发送执行的任何命令 它会直接进入 onFailure String message 并显示空消息 所以我在我的应用程序 g
  • 为什么一个线程会中断另一个线程[重复]

    这个问题在这里已经有答案了 在Java多线程应用程序中 我们处理InterruptedThreadException 如果另一个线程中断当前线程 则会抛出此异常 现在 当另一个线程知道它将导致异常时 它可能想要中断当前线程的原因是什么 很多
  • Codility 钉板

    尝试了解 Codility NailingPlanks 的解决方案 问题链接 https app codility com programmers lessons 14 binary search algorithm nailing pla
  • 如何使用 Spring MVC 和 Thymeleaf 添加静态文件

    我的问题是如何添加 CSS 和图像文件等静态文件 以便我可以使用它们 我正在使用 Spring MVC 和 Thymeleaf 我查看了有关此主题的各种帖子 但它们对我没有帮助 所以我才来问 根据这些帖子 我将 CSS 和图像文件放在res
  • Java 类:匿名类、嵌套类、私有类

    有人能解释一下Java中匿名类 嵌套类和私有类之间的区别吗 我想知道与每个相关的运行时成本以及每个编译器的方法 这样我就可以掌握哪个最适合用于例如性能 编译器优化的潜力 内存使用以及其他 Java 编码人员的普遍可接受性 我所说的匿名类是指
  • Hibernate @OneToMany 注释到底是如何工作的?

    我对 Hibernate 还很陌生 我正在通过教程学习它 我在理解到底如何一对多注释作品 所以我有这两个实体类 Student代表一个学生并且Guide代表指导学生的人 因此 每个学生都与一名向导相关联 但一名向导可以跟随多个学生 我想要一
  • 如何在 Java 中创建要打印到 JFrame 的 JLabels 数组

    我正在尝试制作一系列标签 每个标签都有一个来自函数的不同值 我不知道要使用的标签的确切数量 我的意思是可以打印任意数量的值 请帮我做这件事 很简单 只需一个方法返回一个数组或一些 JLabels 集合 并将它们全部添加到您的 JCompon
  • 在 netBeans 中运行程序时,字体看起来非常奇怪

    我在我的新 MacBook M1 上设置了 netBeans 和 SceneBuilder 除了运行程序时的字体外 一切正常 它看起来像这样 我不知道为什么 按钮应显示 Click me 标签应显示 Hello 我收到的错误消息是 M rz
  • Java 8根据Map属性过滤Map对象列表以删除一些重复项

    Have a List
  • 如何使用maven创建基于spring的可执行jar?

    我有一个基于 Maven 的 Spring WS 客户端项目 我想将其打包为单个 jar 在eclipse中 一切运行正常 当我尝试将其打包为可执行 jar 时 我收到 ClassNotFound 异常 因为 Spring jar 未包含在
  • BoneCP 和 Derby - 如何正确关闭

    I have BoneCP CONNECTION POOL CONNECTION POOL getConfig setJdbcUrl jdbc derby database shutdown true Connection connecti
  • Java中的媒体播放器库[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在评估用于在 Java 中播放音频 视频的库 它不需要 100 Java Java 与本机库的绑定
  • 当我在 Java 中输入 IP 时无法连接到我的服务器

    好的 我正在尝试学习 Java 客户端 服务器的内容 并且正在浏览教程代码 如下所示 当我将 localhost 更改为我的 IP 时 它会停止工作 请帮忙 编辑 127 0 0 1 似乎也可以工作 但不是我的真实IP Copyright
  • 条件查询:按计数排序

    我正在尝试执行一个标准查询 该查询返回 stackoverflow 中回答最多的问题 例如常见问题解答 一个问题包含多个答案 我正在尝试使用标准查询返回按每个问题的答案数排序的回答最多的问题 任何人都知道我应该在 hibernate cri
  • 编译时在代码中替换Java静态最终值?

    在java中 假设我有以下内容 fileA java class A public static final int SIZE 100 然后在另一个文件中我使用这个值 fileB java import A class b Object t

随机推荐

  • FineReport 帆软实战一 帆软概述及软件下载

    前言 公司近期引进帆软报表替换原先的润乾报表 以提供更为强大的报表处理能力 因此我也开始从零学习帆软报表 帆软报表报表分为FineReport和FineBI Report可以理解为面向开发人员的报表设计器 用于开发复杂类型的报表 需要开发人
  • 计算机中的二进制表示-4和5

    十进制 二进制 5 00000000 00000000 00000000 00000101 4 11111111 11111111 11111111 11111100 负数的二进制如何得出 相信正数的二进制表示大家都懂 但是这个 4怎么来的
  • 一文教你如何在HBuilderX中使用模拟器开发调试App

    一文教你如何在HBuilderX中使用模拟器开发调试App 第一步下载HBuilderX 第二步 下载一个模拟器 这里我选择的是网易出品的mumu模拟器 第三步 打开上面安装的两个软件 接着在hbx里运行到模拟器 如下图所示 如果和图片中一
  • 从12306验证码看人工智能未来发展

    事件背景 最近12306对登陆验证过程进行了升级 让很多抢票软件失效 也引起众多网友的热议 如图 用户在登陆时需要选择和题目给出的描述相同的图片 新的验证方式推出后 不少网友也在网上发表看法 大部分网友表示此举很给力 黄牛抢票软件失效了 对
  • mysql dump 导出表_[译文]MySQL中快速逻辑备份一张单独的表

    逻辑备份在跨云环境的数据迁移和表级恢复中非常有用 8 0 22的MySQL shell引入了两个新的实用程序util dumpTable 和util exportTable 用于从MySQL中导出单独的表 在8 0 22之前 无法使用MyS
  • 电脑提示vcomp140.dll无法继续执行代码

    电脑提示vcomp140 dll无法继续执行代码怎么办 vcomp140 dll是电脑系统系统重要的动态链接库文件 丢失或者损坏的话 会导致电脑很多软件跟游戏无法打开运行 需要怎么修复 详细困扰着不少小伙伴 小编今天就把教程分享给大家 修复
  • 2.0生命周期 fabric java 链码安装

    2 0生命周期 fabric java 链码安装 步骤
  • ATT&CK红队评估实战靶场-1(全网最细)

    声明 该系列文章首发于公众号 Y1X1n安全 转载请注明出处 本公众号所分享内容仅用于网安爱好者之间的技术讨论 所有渗透及工具的使用都需获取授权 禁止用于违法途径 否则需自行承担 本公众号及作者不承担相应的后果 ATT CK红队评估实战靶场
  • 列表 元组和字典

    1 列表 1 1列表的循环变量 for循环 while循环 1 2列表常见的操作 1 2 1在列表增加元素 append方法 extend方法 insert方法 append方法 在列表的末尾新增元素 extend方法 将一个列表中的元素全
  • Golang协程与通道整理

    协程goroutine 不由OS调度 而是用户层自行释放CPU 从而在执行体之间切换 Go在底层进行协助实现 涉及系统调用的地方由Go标准库协助释放CPU 总之 不通过OS进行切换 自行切换 系统运行开支大大降低 通道channel 并发编
  • 求一个数组的最大值最小值及其下标

    求一个数组的最大值最小值及其下标 思路 假定一个数为最大值 如果有个数比假定的最大值还大 那么该数就为最大值 最小值同理 使用for循环 public class MaxMin public static void main String
  • java 对象序列化磁盘_java对象的序列化以及反序列化详解

    一 概念 序列化 把创建出来的对象 new出来的对象 以及对象中的成员变量的数据转化为字节数据 写到流中 然后存储到硬盘的文件中 反序列化 可以把序列化后的对象 硬盘上的文件中的对象数据 读取到内存中 然后就可以直接使用对象 这样做的好处是
  • Could not resolve dependencies for project

    ERROR Failed to execute goal on project open common Could not resolve dependencies for project com wt open open common j
  • JavaBean的Scope属性

    Scope 属性代表了Javabean对象的生存时间 可以是page request session和application中的一个 它们分别代表了JavaBean的四种不同生命周期和四种不同的使用范围 page的生命周期和作用范围是4种类
  • 【大学生软件测试基础】白盒测试 - 控制流图 - 01

    任务1 画出程序流程图 任务2 画出控制流图 任务3 根据程序环形复杂度的计算公式 求出程序路径集合中的独立路径数目 任务4 根据环形复杂度的计算结果 源程序的基本路径集合中有多少条独立路径 任务5 设计测试用例 1 程序流程图 2 控制流
  • git资料

    IDEA中Git的使用 https www cnblogs com javabg p 8567790 html 如何用git将项目代码上传到github https blog csdn net laozitianxia article de
  • Centos 7 大硬盘分区(>2TB) - parted & xfs

    Centos 7 针对超过2T的大硬盘 采用parted分区 1 运行parted命令 进入parted界面后 运行p打印已有分区信息 找到前一个分区终止点 如 2 2028kb 51 2GB xfs 其至终点应为51 2GB 运行mkpa
  • RabbitMQ高级特性(四):RabbitMQ之TTL(存活时间/过期时间)

    RabbitMQ高级特性 四 RabbitMQ之TTL 存活时间 过期时间 TTL 全称 Time To Live 存活时间 过期时间 当消息到达存活时间后 还没有被消费 会被自动清除 RabbitMQ可以对消息设置过期时间 也可以对整个队
  • Symbol的理解和使用

    Symbol的诞生 也就是Symbol存在的意义 之前我们的对象属性的数据类型都是字符串 没有其他的 所以会导致属性名的重复 导致属性值被覆盖的情况 比如 你使用了一个他人提供的对象 但又想为这个对象添加新的方法 在添加的操作就很容易覆盖原
  • java中List集合三种获取集合元素方式

    java中List集合三种获取集合元素方式 1 for 2 迭代器 3 增强for循环 List集合常用方法 List作为Collection集合的子接口 不但继承了Collection接口中的全部方法 而且还增加了一些根据元素索引来操作集