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

舞阳网站建设app推广方案模板

舞阳网站建设,app推广方案模板,天眼查河南建设网站公司,微网站开发+在线商城Java列表List的定查改增删操作定义查找遍历元素与下标互查修改增加删除java.util中提供了三种常用的集合类,列表List、集合Map和字典Set。这些集合类相较于数组有更多功能,并且都可以通过Iterator(迭代器)来访问。 在这篇博客中&…

Java列表List的定查改增删操作

  • 定义
  • 查找
    • 遍历
    • 元素与下标互查
  • 修改
  • 增加
  • 删除

java.util中提供了三种常用的集合类,列表List、集合Map和字典Set。这些集合类相较于数组有更多功能,并且都可以通过Iterator(迭代器)来访问。

在这篇博客中,首先来介绍一下列表List。

List与数组类似,按顺序存储元素,但可以方便地增加和删除元素。List可以由数组(ArrayList)或链表(LinkedList)来实现。ArrayList方便查找元素,但是不方便增加/删除元素;LinkedList方便增加/删除元素,但不方便查找元素。一般使用ArrayList,但也要具体情况具体分析。

定义

List的定义方法有很多,在这里我只介绍两种,其他的方式可以参考Java 中初始化 List 集合的 6 种方式! 。

第一种常规方式,比较繁琐。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>();list.add(1);list.add(2);list.add(3);for(int item : list){System.out.println(item);}}
}

第二种方式,借助Arrays工具类。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));for(int item : list){System.out.println(item);}}
}

查找

遍历

首先考虑遍历List,有两种方法。第一种方法是for循环+下标,第二种方法是使用Iterator(迭代器)。

第一种方法,有点类似于数组的操作,使用get函数。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));for(int i = 0; i < list.size(); i++){System.out.println(list.get(i));}}
}

第二种方法,也有两种不同的写法。

第一种写法上面已经展示过了,for循环+Iterator。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));for(int item : list){System.out.println(item);}}
}

第二种写法,使用Iterator的hasNext函数和next函数。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));for(Iterator it = list.iterator(); it.hasNext();){System.out.println(it.next());}}
}

总的来说,用Iterator要比用下标更快一些。此外,如果用for循环+下标的方式,在List删除元素时会有一些问题,具体可见List中remove()方法的注意事项。

元素与下标互查

其次考虑根据下标查找List中的元素,以及根据元素查找其在List中的下标。

对于第一个问题,在上面已经展示过了,使用get函数。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));int index = 1;int item = list.get(index);System.out.println(item);}
}

对于第二个问题,List有一个String中同名的函数,indexOf函数。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));int item = 3;int index = list.indexOf(item);System.out.println(index);}
}

修改

List要修改元素很简单,使用一个get函数相对应的函数,set函数。set函数对指定的下标进行修改。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));list.set(0, 666);for(int item : list){System.out.println(item);}}
}

增加

List要增加元素同样很简单,使用一个set函数类似的函数,add函数。add函数对指定的下标进行增加。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));list.add(0, 666);for(int item : list){System.out.println(item);}}
}

删除

List可以按下标删除元素,或者直接删除某个元素。

如果是按下标删除元素,那么返回值为被删除的元素。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));list.remove(1);for(int item : list){System.out.println(item);}}
}

如果是按元素删除,那么返回值为true/false,表示是否已删除。值得注意的是,当List为int型时,如果直接将元素传入remove函数,会被当作下标处理。需要将元素进行显式类型转换。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));list.remove((Integer) 1);for(int item : list){System.out.println(item);}}
}

在删除元素之前,可以先判断List中是否包含该元素。与String类似,可以用contains函数。

import java.util.*;public class Main
{public static void main(String[] args) {List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));if(list.contains((Integer) 1)) {list.remove((Integer) 1);}for(int item : list){System.out.println(item);}}
}

参考:

Java集合简介

使用List

Java 中初始化 List 集合的 6 种方式!

在Java中的List中查找元素的索引

List中remove()方法的注意事项

【Java】从List中正确删除一个整数

http://www.tj-hxxt.cn/news/84121.html

相关文章:

  • 做搜狗网站优化点击软站长工具权重
  • wordpress 获得参数哪家公司做seo
  • 做数据ppt模板下载网站上海网络推广公司网站
  • 网上商城制作网络优化工程师吃香吗
  • 常州网站建设专业的公司乔拓云网微信小程序制作
  • phpcms律师网站源码大气律师事务所模板网站站长
  • 昆明网站建设技术托管酒吧营销用什么软件找客源
  • h5自适应网站源码优化设计方案
  • 网站建设商微信软文广告经典案例
  • seo百度百科杭州seo渠道排名
  • 手机端网站ui做多少像素企业模板建站
  • 免费怎么制作公司网站关键词优化工具有哪些
  • 广州建设网站的公司简介任务推广引流平台
  • 做网站的是什么专业sem推广和seo的区别
  • 企业网站开发需求详细文档商丘 峰少 seo博客
  • 免费入驻的外贸网站浏览器打开是2345网址导航
  • 做玩网站怎么上传网络营销是什么工作主要干啥
  • 介休网站建设郑州热门网络推广免费咨询
  • 网站建设公司转型做什qq群引流推广平台免费
  • 南宁网站建设公司湖南网站设计外包哪家好
  • 杭州杭州网站建设公司性价比高seo排名
  • 设计一个企业网站首页1688官网入口
  • 网站建设维修服务流程互联网营销师证书是国家认可的吗
  • 什么做网站的公司好什么是网络营销?
  • 高端网站建设哪家公司好免费创建个人网站
  • 网站建设及照片使用保密协议seo引擎优化是什么
  • 网站三级页面宣传推广文案
  • 日日干天天做网站网络广告营销方案策划
  • 做sns网站需要什么软文街怎么样
  • 宁夏公路建设管理局网站排名优化网站seo排名