For(1循环的初始化;2循环的继续条件;4循环的步长){
3循环体
}
- 循环的初始化
While(2.循环的继续条件){
3.循环体
4.循环的步长
}
第二种
While(true){
-
循环的初始化
-
循环的继续条件
-
循环体
-
循环的步长
} (不管三七二十一 先进来再说,但这是一个死循环,在需要的地方跳出break)
1.在代码的运算中 1/2是0 1.0/2是0.5
2.
%3d的意思是输出3位
3.闰年的计算 能被4整除但不能被100整除 || 能被400整除
4.是否为素数: num%比自己小的数!=0
素数只能被1和自己整除
5.break:强行跳出循环,不执行循环中剩余的语句。
6.return 跳出循环体所在方法
7.continue结束本次循环,进行下次循环
8.while适合循环条件已知 但是循环次数未知的情况;
for适合于循环次数已知的情况
for我while可以完全转换
首先对题目进行分析,一共打印了8行,每一行打印的规律是以2的几次方递增。还有绝对值打印的规律
public static void main(String[] args){
for(int i=1;i<=8;i++){//打印了8列
for(int k=1;k<=8-i;k++){//每行打印的空格是随行数i增加而递减的
System.out.print(" ");
}
for(int x=-(i-1);x<=i-1;x++){//x的取值范围是【-(i-1),i-1】
System.out.printf("%4d",(int)Math.pow(2,i-1-Math.abs(x)));//输出4位 y=i-1-|x|
}
System.out.println();
}
}