Java中列表的基本操作

这篇具有很好参考价值的文章主要介绍了Java中列表的基本操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

列表有下标,是一个可变容器,元素可以重复,Java中list包含arraylist和linklist,通常使用的是arraylist,查询速度更快,导入的包是java.util.ArrayList。

1、定义列表

定义列表时,如果指定列表接受的数据类型为8大数据类型,需要使用对应数据类型的包装类;列表是一个可变容器,定义后默认元素为空。

//创建一个list
List<String> animallist = new ArrayList<>();

//创建一个ArrayList,接受数据类型为String
ArrayList <String> arlist = new ArrayList <String>();

//创建一个ArrayList,接受数据类型为Int
ArrayList <Integer> brlist = new ArrayList <Integer>();

2、增删改操作

(1)新增

新增主要使用add方法,默认在尾部添加,也可以在指定位置添加,addAll方法可以添加整个集合到列表。

List<String> animallist = new ArrayList<>();
//默认尾部添加
animallist.add("dog");
animallist.add("cat");
animallist.add("fish");
//在指定位置添加
animallist.add(1,"fish");
animallist.add(3,"bird");
animallist.add(5,"cat");

ArrayList <String> arlist = new ArrayList <String>();
//将animallist中的元素添加到arlist
arlist.addAll(animallist);

(2)删除

列表中的元素,可以使用remove方法根据下标删除,也可以根据值删除,如果有多个重复的值,默认删第一个。也可以使用clear方法删除所有元素。

animallist.remove(1);
animallist.remove("cat");
arlist.clear();		

(3)修改

列表中的元素,可以使用set方法修改元素值,操作时如果下标越界则会报错 。也可以使用replaceAll方法将给定的操作内容替换掉列表的中每一个元素。

animallist.set(3, "snake");           
animallist.set(4, "snake");//执行结果报错java.lang.IndexOutOfBoundsException: Index: 4, Size: 4
//replaceAll方法替换掉所有元素
animallist.replaceAll(a -> a +"s");//在所有元素后加上s

3、访问列表

列表可以直接输出;size方法可以获取到列表的长度,get方法可以通过索引获取到列表对应元素,indexOf方法可以获取对应元素的索引。

// 输出整个列表
System.out.println(animallist);
// 输出列表的长度
System.out.println(animallist.size()); 
// 通过索引获取列表对应元素
System.out.println(animallist.get(1));
// 获取列表元素的索引值
System.out.println(animallist.indexOf("birds"));

输出结果为:
Java中列表的基本操作

4、遍历列表

遍历列表主要有3种方式,for循环遍历,foreach遍历,iterator迭代器遍历。

(1)for循环遍历

for循环通过列表的下标遍历。

// for循环下标遍历
for (int index = 0; index < animallist.size(); index += 2) {
	System.out.print(animallist.get(index) + " ");
	}

(2)foreach遍历

foreach直接遍历列表中的元素。

// foreach遍历
for (String s : animallist) {
	System.out.print(s + " ");
	}

(3)iterator迭代器遍历

//iterator迭代器遍历
Iterator<String> lit = animallist.iterator();//声明list的迭代器
while (lit.hasNext()) {
	String value = lit.next();
	System.out.println(value + " ");
	}

5、列表转换

列表可以通过对应方法直接转为数组或字符串。toArray将 arraylist 转换为数组;toString将 arraylist 转换为字符串。

// 列表转为数组
String[] animals=new String[4];
animallist.toArray(animals);
// 遍历数组
for (String i:animals){
		System.out.println(i);
		}
// 列表转为字符串
System.out.println(animallist.toString());

输出结果为:
Java中列表的基本操作

6、其他操作

列表的一些其他操作包括:
sort方法------对arraylist 元素进行排序;
subList方法------截取部分 arraylist 的元素;
isEmpty方法------判断 arraylist 是否为空;
contains方法------判断元素是否在 arraylist;

// 升序排列
animallist.sort(Comparator.naturalOrder());
System.out.println(animallist);
// 按照列表索引截取部分列表
System.out.println(animallist.subList(1, 3));//索引区间左闭右开
// 判断是否为空
System.out.println(animallist.isEmpty());
// 判断是否包含某元素
System.out.println(animallist.contains("dogs"));

输出结果是:
Java中列表的基本操作文章来源地址https://www.toymoban.com/news/detail-429377.html

到了这里,关于Java中列表的基本操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java 操作es 的基本操作

    创建索引 创建索引别名 索引的相关设置 查询索引数据 bulk 导入数据 持续更新中~ pom的坐标

    2024年01月20日
    浏览(43)
  • 单链表基本操作(java)

    节点类是链表类的内部类

    2024年02月16日
    浏览(38)
  • Java有关队列的基本操作

    队列是一种线性数据结构,队列中的元素只能先进先出; 队列的出口端叫做队头,入口端叫做队尾。 1.入队: 2.出队: 3.判断队满的情况: 点击查看代码

    2024年02月09日
    浏览(39)
  • Java 操作RestHighLevelClient基本使用

    在使用 RestHighLevelClient的过程中发现,它已经标记为过时了。 在 Elasticsearch7.15版本之后,Elasticsearch官方将它的高级客户端 RestHighLevelClient标记为弃用状态。 同时推出了全新的 Java API客户端 Elasticsearch Java API Client,该客户端也将在 Elasticsearch8.0及以后版本中成为官方推荐使用的

    2024年02月11日
    浏览(43)
  • ElasticSearch Java API 基本操作

    ElasticSearch Java API是ES官方在8.x版本推出的新java api,也可以适用于7.17.x版本的es。 本文主要参考了相关博文,自己手动编写了下相关操作代码,包括更新mappings等操作的java代码。 代码示例已上传github。 elasticsearch 版本: 7.17.9 ,修改 /elasticsearch-7.17.9/config/elasticsearch.yml ,新增

    2024年02月08日
    浏览(47)
  • Java 线程池的基本操作

    2024年02月20日
    浏览(39)
  • Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了。在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题。看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得都不是很全面。因此就有了写ElasticSearch开发教程的想法,将学习到的技术经验分享出来,

    2024年02月05日
    浏览(42)
  • 【Java】7 再识数组|数组的基本操作

    欢迎来到爱书不爱输的程序猿的博客, 本博客致力于知识分享,与更多的人进行学习交流 目前,已开了以下专栏,欢迎关注与指导 1️⃣Java基础知识系统学习(持续更文中…) 2️⃣UML的应知应会(已更完) 3️⃣MySQL的应知应会(持续更文中…) 4️⃣算法与数据结构体系(持续更文中…

    2023年04月08日
    浏览(35)
  • 数据结构-树的遍历和基本操作(Java实现)

    二叉树的遍历分为以下三种:  前序遍历: 访问顺序为  根节点----左子树----右子树 中序遍历: 访问顺序为  左子树----根节点----右子树 后序遍历: 访问顺序为  左子树----右子树----根节点 接下来针对这3种遍历方式进行详细介绍: 上图前序遍历顺序为 1 2 3 4 5 6 上图中序遍历顺序

    2024年03月25日
    浏览(44)
  • 【Java】实现顺序表基本的操作(数据结构)

    在了解顺序表之前我们要先了解什么是线性表,线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列… 线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构

    2024年02月03日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包