先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注Java)
正文
for(int i=1;i< arr.length;i ++){
if(minVal > arr[i]){
minVal = arr[i];
}
}
System.out.println(“最小值” + minVal);
//求和
int sum = 0;
for(int i=0;i < arr.length;i ++){
sum += arr[i];
}
System.out.println(“和=” + sum);
//求平均值
int mean=sum / arr.length;
System.out.println(“平均值=” + mean);
}
}
//查看所有随机数34 查看所有随机数46 查看所有随机数85 查看所有随机数71 查看所有随机数33 查看所有随机数30 查看所有随机数65 查看所有随机数79 查看所有随机数17 查看所有随机数25
//最大值85
//最小值17
//和=485
//平均值=48
=======================================================================
- 数组赋值不能直接将arr1赋值给arr2,这样只是将arr1的堆区域地址赋给了他,当我们对arr2进行改变时,arr1也会改变
错误示例:
public class copyArryTest7 {
public static void main(String[] args) {
int[] arr1=new int[]{1,6,3,78};
int[] arr2=arr1;
for (int i=0;i< arr2.length;i ++){
if(i %2 == 0){
arr2[i]=i;
}
}
for (int i=0;i < arr1.length; i++){
System.out.print(“arr1值:”);
System.out.print( arr1[i] +“\t”);
}
}
}
//arr1值:0 arr1值:6 arr1值:2 arr1值:78
- 正确做法是new出来一个新的,并遍历重新赋值
public class copyArryTest7 {
public static void main(String[] args) {
int[] arr1=new int[]{1,6,3,78};
int[] arr2=new int[arr1.length];
for (int i=0;i< arr1.length;i ++){
arr2[i]=arr1[i];
}
}
}
=======================================================================
-
这里反转执行长度为arr1.length / 2,也就是只是一半的交换,如果是arr1.length那么又会换回来
-
需要定义一个中间变量暂时进行缓存
public static void main(String[] args) {
String[] arr1=new String[]{“aa”,“bb”,“cc”,“dd”};
for(int i=0; i < arr1.length / 2;i ++){
String temp=arr1[i];//中间变量temp缓存
arr1[i]=arr1[arr1.length - i - 1];
arr1[arr1.length - i -1]=temp;
}
for(int i=0;i < arr1.length;i ++){
System.out.println(arr1[i]);
}
}
}
//dd cc bb aa
=================================================================================
-
普通查找只需遍历所有数组,判断是否相等
-
二分法查找有个前提条件,必须是有序列表,每次取中间值进行比较,然后缩减范围
public class findArryTest9 {
public static void main(String[] args) {
int[] arr=new int[]{-6,3,6,9,13};
//普通查找
boolean isFind1=true;
int num=13;
for(int i=0;i < arr.length;i ++){
if(num == arr[i]){
System.out.println(“找到了,位置在” + i);
isFind1=false;
break;
}
}
if(isFind1){
System.out.println(“没找到”);
}
//二分法查找
int num2=13;
int start=0;
int end= arr.length;
boolean isFind2=true;
while(start <= end){
int middle=(start +end) /2;
if(num2 == arr[middle]){
System.out.println(“找到了,位置在” + middle);
isFind2=false;
break;
}else if(num2 > arr[middle]){
start =middle;
}else if(num2 < arr[middle]){
end=middle;
}
}
if(isFind2){
System.out.println(“没找到”);
}
}
}
=======================================================================
-
两两之间相互比较,大的向后移
-
一共执行arr.length-1轮排序
public class sortTest10 {
public static void main(String[] args) {
int[] arr=new int[]{0,4,89,23,-5};
for(int i=0;i < arr.length;i ++){
for(int j=0;j < arr.length - 1 - i;j ++){
if(arr[j] > arr[j + 1]){
int temp=arr[j];
arr[j]=arr[j + 1];
arr[j + 1]=temp;
}
}
}
for (int i = 0;i < arr.length;i ++){
System.out.print(arr[i] + “\t”);
}
}
}
//-5 0 4 23 89
======================================================================
-
首先定义最小,最大X轴值,最小,最大y轴值,以及初始值
-
首先X1每次值增长到Y轴最大值,然后从这里继续向下增长到X轴最大值,顺着X轴增长到Y轴最小值,然后回到Xmin+1轴位置
public class arrTest5 {
public static void main(String[] args) {
int num=7;
int[][] arr=new int[7][7];
int count=0;//用于显示的起始数据
int maxX=num - 1;//X轴最大下标
int maxY=num - 1;//Y轴最大下标
int minX=0;//X轴最小下标
int minY=0;//Y轴最小下标
while(minX <= maxX){
//X1轴增长到7
for(int x=minX;x<= maxX;x++){
arr[minY][x]=++ count;
}
//就表示X1轴不存在了,下次从X2轴走起
minY++;
//Y7轴增长到13
for(int y=minY;y<=maxY;y++){
arr[y][maxX]=++ count;
}
//Y7轴也就不存在了
maxX–;
//X7轴从右向左增长到19
for(int x=maxX;x >=minX; x–){
arr[maxY][x]=++ count;
}
//X7轴也就不存在了
maxY–;
//Y1轴从下面增长到x2轴到24
for(int y=maxY;y>= minY;y–){
arr[y][minX]=++ count;
}
//Y1轴也就不存在了
minX++;
}
for(int i=0;i<arr.length;i++){
for(int j=0;j<arr.length;j++){
System.out.print(arr[i][j] + " ");
}
System.out.println(" \t");
}
}
}
//1 2 3 4 5 6 7
//24 25 26 27 28 29 8
//23 40 41 42 43 30 9
//22 39 48 49 44 31 10
//21 38 47 46 45 32 11
1200页Java架构面试专题及答案
小编整理不易,对这份1200页Java架构面试专题及答案感兴趣劳烦帮忙转发/点赞
百度、字节、美团等大厂常见面试题
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
1200页Java架构面试专题及答案
小编整理不易,对这份1200页Java架构面试专题及答案感兴趣劳烦帮忙转发/点赞
[外链图片转存中…(img-CUk0qp39-1713633108163)]
[外链图片转存中…(img-rrew7tvz-1713633108163)]
百度、字节、美团等大厂常见面试题
[外链图片转存中…(img-70i028j6-1713633108164)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
[外链图片转存中…(img-1jQyxNIX-1713633108164)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!