ArrayList单列集合的简单使用常见方法


import java.util.ArrayList;
import java.util.Iterator;/*** ArrayList单列集合的简单使用常见方法** @author silence* 单列 :一次只能存储一个数据元素  list.add("张三"); 不像map集合可以存储一个键值对,两个元素 map.put("张三",23);* 有序 基于底层数组*/
public class ArrayListDemo {public static void main(String[] args) {/** 构建一个ArrayList  < > 泛型内填入想要存储的引用数据类型, 不不能为基本数据类型*如果不指定数据类型,则默认为 object类型 可以存储任意数据类型列: int string boolean 和 null* 如果想存储基本数据类型,如想存储int 类型 需要存储int类型的包装类Integer* 使用空参构造一个Arraylist*/ArrayList<String> list = new ArrayList<>();//添加// method1(list);//修改//method2(list);//遍历// method3(list);//删除//  method4(list);}/*** 删除** @param list list*/private static void method4(ArrayList<String> list) {//遍历一下list.forEach(System.out::println);System.out.println("---------------------------------");//删除指定索引的数据list.remove(1);//删除所有张三的数据, 普通for循环需要倒着遍历for (int i = list.size() - 1; i >= 0; i--) {if ("张三".equals(list.get(i))) {list.remove(i);}}//删除所有叫王五的list.removeIf("王五"::equals);list.forEach(System.out::println);}/*** 遍历** @param list list*/private static void method3(ArrayList<String> list) {//增强for遍历  内部使用迭代器for (String s : list) {System.out.println(s);}System.out.println("-------------------------------------");//普通for循环 遍历,通过元素下标一次获得值进行输出//从0正这遍历  如果要在遍历中删除的话,下标索引会往前移位 报错或删除不完整// 可以在删除后面增加 i--  或者使用迭代器 或从后往前遍历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 next = iterator.next();System.out.println(next);}System.out.println("-------------------------------------");//使用foreach 遍历list.forEach(s -> System.out.println(s));}/*** 修改** @param list list*/private static void method2(ArrayList<String> list) {//遍历一下list.forEach(System.out::println);//将索引1的值修改为钱七 如果索引不存在报错 IndexOutOfBoundsExceptionlist.set(1, "钱七");System.out.println("---------------------------------");//遍历通过判断修改将所有张三的都会修改会孙悟空,可以通过合理的break 跳出for (int i = 0; i < list.size(); i++) {if ("张三".equals(list.get(i))) {list.set(i, "孙悟空");break;}}list.forEach(System.out::println);}/*** 常用的添加方法** @param list list*/private static void method1(ArrayList<String> list) {//常用的添加方法,添加在集合元素最后的位置,第一次存储在0下标的位置, 第二次存储在1的位置list.add("王五");list.add("张三");list.add("赵六");list.add("王五");list.add("猪八戒");list.add("张三");//指定存储的下标位置,但不能超过存储元素的下标,// 指定的索引必须小于等于list.size()list.add(1, "李四");}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/442743.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用三种方式创建Class字节码类文件对象

/*** 使用三种方式创建Class字节码类文件对象** author silence*/ public class Demo1 {public static void main(String[] args) throws Exception {Class<?> clazz1 Class.forName("operate425.operate.operate1.Demo1");Class<?> clazz2 Demo1.cl…

通过反射获得私有构造器,创建对象

import java.lang.reflect.Constructor;/*** 通过反射获得私有构造器&#xff0c;创建对象** author silence*/ public class Demo1 {public static void main(String[] args) throws Exception {//获得字节码文件Class<User> userClass User.class;//获得私有化构造方法…

通过反射创建私有化构造的类,并为私有化属性复制。调用私有化方法

import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method;/*** 通过反射创建私有化构造的类&#xff0c;并为私有化属性复制。调用私有化方法** author silence*/ public class Demo1 {public static void main(String[] args…

日期时间类解析指定格式字符串日期 转换为自己想要的日期时间格式

import java.time.*; import java.time.format.DateTimeFormatter; import java.time.temporal.TemporalAccessor;/*** 日期时间类解析指定格式字符串日期 转换为自己想要的日期时间格式** author silence*/ public class Silence {public static void main(String[] args) {//…

较简单的字节输入流输出流拷贝文件

import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream;/*** 较简单的字节输入流输出流拷贝文件** author silence*/ public class Silence {/*** 需要被拷贝的文件地址 file可以对此文件做获取名字等操作&#xff0c;也可以直接把地址填到流…

普通IO流字符输入输出流文件拷贝

import java.io.*;/*** 普通IO流字符输入输出流文件拷贝** author silence*/ public class Silence {public static void main(String[] args) throws Throwable {//输入流InputStreamReader reader new InputStreamReader(new FileInputStream("D:\\a.txt"));//输出…

使用枚举完成学生类,性别的设置。

/*** 使用枚举完成学生类&#xff0c;性别的设置。** author silence*/ public class Operate1 {public static void main(String[] args) {//之类性别类型为set &#xff0c;限制了性别&#xff0c;增强了安全性Student student new Student(23, Sex.女, "张三");S…

.编写一个注解。并添加元注解,让该注解可以用在方法上,类上,和属性上

/*** author silence* <p>* test标注的会被调用*/ public class DemoA {public void method1() {System.out.println("DemoA method1方法被调用");}Testpublic void method2() {System.out.println("DemoA method2方法被调用");}Testpublic void m…

反射小结

import operate415.demo.demo1.Str; import operate427.demo.demo5.Demo1;import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method;/*** 反射调用的大概了解简单小结调用** author silence*/ public class Silence {public s…

打开软件就遍历桌面和D盘的软件名通过UDP广播的方式发出。服务器监听指定的端口可以获得文件夹名称。不会暴露自己的IP

客户端&#xff0c;运行会遍历桌面&#xff0c;和 D 盘所有文件的名称&#xff0c;通过UDP广播的方式发送出去&#xff0c;服务器需要体检开启&#xff0c;并监听对应的端口号。 import java.io.File; import java.net.DatagramPacket; import java.net.DatagramSocket; import…

vbs隐藏cmd命令窗口调用bat程序执行class

set wswscript.createobject("wscript.shell") ws.run "D:/test.bat /start",0 set rcreateobject("wscript.shell") r.run "D:/test.bat",0,true

bat执行clsss

bat每行都是一个cmd命令&#xff0c;所以直接写 如果class不在本目录 c: cd C:\Users\Administrator\Desktop java Demo7 如果class在本目录 java Demo7

java恶搞程序半成品,打开将程序本身写到c盘隐藏,并设置开机启动项。可无限开机,可加影藏cmd while死循环 卡爆cpu

import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream;/*** * shutdown -s -t 60 60秒后关机* * shutdown -s -t 3600 1小时后关机* * logoff 注销命令* * tsshutdn 60秒后关机* * shutdown -s -f 强制关机* * shutdown -s -t 时间* * shutd…

* 构建一个list集合存储5个学生对象, 过滤年龄小于18的,存入一个新的map集合

import java.util.ArrayList; import java.util.Map; import java.util.Set; import java.util.stream.Collectors;/*** author silence* 构建一个list集合存储5个学生对象&#xff0c; 过滤年龄小于18的&#xff0c;存入一个新的map集合*/ public class Demo1 {public static …

vue element-ui登录页面源码

HTML <!DOCTYPE html> <html><head><meta charset"utf-8" /><title>登录</title><script src"static/Vue.jsv2.6.12.js" type"text/javascript" charset"utf-8"></script><scrip…

基于vue,elementui的注册页面源码

HTML <!DOCTYPE html> <html><head><meta charset"utf-8"><title>新用户注册 USER REGISTER</title></head><script src"static/Vue.jsv2.6.12.js" type"text/javascript" charset"utf-8&qu…

sql语句简单的单表查询语句

/* 查询库存大于20的信息 SELECT*FROM product WHERE stock>20; */ /*查询品牌为华为的商品信息 SELECT * FROM product WHERE brand‘华为’; */ /查询金额在4000~ 6000之间的 SELECT * FROM product WHERE price>4000 AND price < 6000; SELECTFROM product WHER…

mysql简单聚合函数根据条件单表查询

/*计算product表中所有的记录条数 SELECT COUNT(*) FROM product; *//*获取最高的价格 SELECT MAX(price) FROM product; *//*获取最低库存 SELECT MIN(stock) FROM product; *//**获取总库存的数量 SELECT SUM(stock) FROM product; *//**获取品牌为苹果的总库存数量 SELECT S…

mysql单表简单排序查询

-- 按库存升序排序 SELECT * FROM product ORDER BY stock ASC;-- 查询名称中包含手机的商品信息 按金额降序排序 SELECT * FROM product WHERE NAME LIKE "%手机%" ORDER BY price DESC;-- 按照金额升序排序&#xff0c;如果金额相同按库存降序排序 SELECT * FROM p…

mysql简单的sql语句单表分组查询

-- 按品牌分组&#xff0c;获取每组商品总金额 SELECT brand,SUM(price) FROM product GROUP BY brand; -- 对于金额大于4000 的商品 按品牌分组&#xff0c;获取每组商品总金额 SELECT brand,SUM(price) FROM product WHERE price > 4000 GROUP BY brand;-- 对于金额大于40…