Java核心架构进阶知识点
面试成功其实都是必然发生的事情,因为在此之前我做足了充分的准备工作,不单单是纯粹的刷题,更多的还会去刷一些Java核心架构进阶知识点,比如:JVM、高并发、多线程、缓存、Spring相关、分布式、微服务、RPC、网络、设计模式、MQ、Redis、MySQL、设计模式、负载均衡、算法、数据结构、kafka、ZK、集群等。而这些也全被整理浓缩到了一份pdf——《Java核心架构进阶知识点整理》,全部都是精华中的精华,本着共赢的心态,好东西自然也是要分享的
内容颇多,篇幅却有限,这就不在过多的介绍了,大家可根据以上截图自行脑补
-
循环的开始条件只会在第一轮开始的时候执行一次,后续均不再执行
-
循环结构适合我们在程序中需要反复执行某一件事时使用
-
循环能够执行几次,取决于循环变量能够取到几个值,而不是循环变量的取值范围
public static void main(String[] args) {
//比如此处循变量i的取值范围是8~8888,但是循环只执行了4次
//因为i只取到了4个值,分别是8,88,888,8888
for (int i = 8; i <= 8888; i=i*10+8) {
System.out.println(i);
}
}
===============================================================================
-
外层循环控制的是执行的轮数,内层循环控制的是这一轮中执行的次数
-
外层循环控制的是图形的行数,内层循环控制的是这一行的列数
-
案例中的经验:
如果把内层循环循环变量的最大值设置为一个固定值,打印出来的是矩形
//*****
//*****
//*****
for(int i = 1; i<=3 ;i++) {//外层循环,控制的轮数,执行3轮
for(int j = 1;j<=5;j++) {//内层循环,控制的是每轮的次数,每轮执行5次
System.out.print(“*”);
}
System.out.println();//本打印语句用来换行
}
如果把内层循环的循环变量j,设置成随着外层循环循环变量i的变化而变化,打印出来的是直角三角形
System.out.println(“*打印左直角三角形”);
for(int i = 1;i<=6;i++) {//外层循环控制的是行数
/**矩形每行中*的个数是固定不变的
- 而左直角三角形中每行星星个数的最大值是随着行数的变化而变化的,行i星i*/
for(int j = 1; j<=i;j++) {//内层循环控制的是这一行的列数
System.out.print(“*”);
}
System.out.println();//打印空白行用来换行,注意一定要内层循环结束
}
===============================================================================
先判断,再执行,注意while循环设置死循环后必须设置出口~
while(判断条件){
循环体
}
====================================================================================
先执行,再判断,本循环最少会执行一次
do{
循环体
}while(判断条件);
===============================================================================
for:知道循环次数
while/do while:当循环次数不确定时
while:先判断,不符合规则,不执行代码
do while:代码最少被执行一次,再去判断,符合规则,再次执行代码
循环之间都可以互相替代,但是一般最好选择合适的循环结构来完成代码哦~
本次面试答案,以及收集到的大厂必问面试题分享:
mg-R1bd91mf-1715820789619)]