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获取)
最后我们该如何学习?
1、看视频进行系统学习
这几年的Crud经历,让我明白自己真的算是菜鸡中的战斗机,也正因为Crud,导致自己技术比较零散,也不够深入不够系统,所以重新进行学习是很有必要的。我差的是系统知识,差的结构框架和思路,所以通过视频来学习,效果更好,也更全面。关于视频学习,个人可以推荐去B站进行学习,B站上有很多学习视频,唯一的缺点就是免费的容易过时。
另外,我自己也珍藏了好几套视频资料躺在网盘里,有需要的我也可以分享给你:

2、读源码,看实战笔记,学习大神思路
“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。所以,程序员要想快速认知并学习架构,读源码是必不可少的。阅读源码,是解决问题 + 理解事物,更重要的:看到源码背后的想法;程序员说:读万行源码,行万种实践。
Spring源码深度解析:

Mybatis 3源码深度解析:

Redis学习笔记:

Spring Boot核心技术-笔记:

3、面试前夕,刷题冲刺
面试的前一周时间内,就可以开始刷题冲刺了。请记住,刷题的时候,技术的优先,算法的看些基本的,比如排序等即可,而智力题,除非是校招,否则一般不怎么会问。
关于面试刷题,我个人也准备了一套系统的面试题,帮助你举一反三:

只有技术过硬,在哪儿都不愁就业,“万般带不去,唯有业随身”学习本来就不是在课堂那几年说了算,而是在人生的旅途中不间断的事情。
人生短暂,别稀里糊涂的活一辈子,不要将就。
《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门即可获取!
Mybatis 3源码深度解析:
[外链图片转存中…(img-71rebKam-1712043913066)]
Redis学习笔记:
[外链图片转存中…(img-GJ0P07O2-1712043913066)]
Spring Boot核心技术-笔记:
[外链图片转存中…(img-4DRT57YL-1712043913066)]
3、面试前夕,刷题冲刺
面试的前一周时间内,就可以开始刷题冲刺了。请记住,刷题的时候,技术的优先,算法的看些基本的,比如排序等即可,而智力题,除非是校招,否则一般不怎么会问。
关于面试刷题,我个人也准备了一套系统的面试题,帮助你举一反三:
[外链图片转存中…(img-iwY7yw2j-1712043913067)]
只有技术过硬,在哪儿都不愁就业,“万般带不去,唯有业随身”学习本来就不是在课堂那几年说了算,而是在人生的旅途中不间断的事情。
人生短暂,别稀里糊涂的活一辈子,不要将就。
《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门即可获取!
文章详细介绍了Java中的ArrayList类及其方法,如添加、删除、查找元素,以及面试前的刷题策略。作者提供了一份完整的Java开发学习资料清单,包括视频教程、源码分析和面试指南。
1万+

被折叠的 条评论
为什么被折叠?



