void clear() — 清空
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
System.out.println(“清空前:” + list);
list.clear();
System.out.println(“清空后:” + list);
}
输出结果:
E set(int index,E element) 将下标 index 位置元素设置为 element
此处注意,下标不能越界
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
list.add(2,“Yolo”);
System.out.println(“修改前:” + list);
list.set(1,“Codeing”);
System.out.println(“修改后:” + list);
}
输出结果:
E get(int index) — 获取下标 index 位置元素
此处注意,下标不能越界
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
list.add(2,“Yolo”);
System.out.println(list);
System.out.println(list.get(0));
}
int indexOf(Object o) — 返回第一个 o 所在下标
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
list.add(2,“Yolo”);
System.out.println(list)
int index = list.indexOf(“Yolo”);
System.out.println(“第一个Yolo所在下标:” + index);
}
输出结果:
int lastIndexOf(Object o) — 返回最后一个 o 的下标
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
list.add(2,“Yolo”);
System.out.println(list);
int lastIndex = list.lastIndexOf(“Yolo”);
System.out.println(“最后一个Yolo所在下标:” + lastIndex);
}
输出结果:
boolean contains(Object o) — 判断 o 是否在线性表中
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
list.add(2,“Yolo”);
System.out.println(list);
System.out.println(list.contains(“Java”));
}
输出结果:
int size( ) — 获取集合中有多少个元素
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
list.add(2,“Yolo”);
System.out.println(list);
System.out.println(list.size());
}
输出结果:3
boolean isEmpty( ) — 判断集合是否为空
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
list.add(2,“Yolo”);
System.out.println(list);
System.out.println(list.isEmpty());
list.clear();
System.out.println(list.isEmpty());
}
输出结果:
使用 subList 获取子序列
原型:List subList(int fromIndex,int toIndex) — 截取部分 list
.
包含下标为 fromIndex的元素,不包含下标为toIndex的元素
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
list.add(2,“Yolo”);
System.out.println(list);
System.out.println(list.subList(0, 2));
}
输出结果:
foreach 访问每个元素
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
list.add(2,“Yolo”);
System.out.println(list);
for(String s : list){
System.out.println(s);
}
}
输出结果:
传统 for循环 访问每个元素
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Yolo”);
list.add(“Java”);
list.add(2,“Yolo”);
System.out.println(list);
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}
输出结果:
使用构造方法构造出新的 List 对象
public static void main(String[] args) {
List list = new ArrayList<>();
list.add(“Cpp”);
list.add(“Java”);
list.add(“Python”);
list.add(“C#”);
System.out.println(list);
//拷贝一份 list,即:将list拷贝一份给list2
List list2 = new ArrayList<>(list);
System.out.println(list2);
}
思考: 此处为深拷贝还是浅拷贝?
首先,想到的就是 修改 list 的元素,查看 list2 中是否发生改变
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
最后
小编精心为大家准备了一手资料
以上Java高级架构资料、源码、笔记、视频。Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术
【附】架构书籍
- BAT面试的20道高频数据库问题解析
- Java面试宝典
- Netty实战
- 算法
BATJ面试要点及Java架构师进阶资料
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
=“img” style=“zoom: 33%;” />
最后
小编精心为大家准备了一手资料
[外链图片转存中…(img-xTLu7cDc-1712599395772)]
[外链图片转存中…(img-JG9zOIlD-1712599395772)]
以上Java高级架构资料、源码、笔记、视频。Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术
【附】架构书籍
- BAT面试的20道高频数据库问题解析
- Java面试宝典
- Netty实战
- 算法
[外链图片转存中…(img-1SlBzDEI-1712599395772)]
BATJ面试要点及Java架构师进阶资料
[外链图片转存中…(img-gjd60Jtp-1712599395773)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!