for循环
- 虽然所有循环都可以用while和do...while,但是Java还提供了另一种更语句—for循环,使一些循环语句更简单
- for循环是支持迭代的一种通用结构,最有效,最灵活的循环结构,for循环的执行次数在执行前就确定的,语句结构:
for(初始化;布尔表达式;更新){
//代码语句
}
public class ForDemo01 {
public static void main(String[] args) {
int a = 1;//初始化条件
while (a<=100){//判断语句
System.out.println(a);//循环体
a+=2;//迭代
}
System.out.println("while循环结束");
//初始化条件//条件判断//迭代
for (int i=1;i<=100;i++){
System.out.println(i);
}
System.out.println("for循环结束");
}
}
for(;;){
//
}
- for循环最先执行初始化步骤,可以声明一种类型,但可初始化一个或多个循环体控制变量,也可以总是空语句。
- 然后是检查布尔表达式,如果为true,循环体被执行。如果为false,循环终止,开始执行循环体后边的语句。
- 执行一次后,更新循环控制变量(迭代因子控制变量的增减)。
- 再次检查布尔表达式,循环执行上面的过程。
- 练习0-100的奇数和偶数的和:
public class ForDemo02 {
public static void main(String[] args) {
//计算0-100的奇数和偶数的和
int oddSun = 0;
int evenSum = 0;
for (int i = 0; i < 100; i++) {
if (i%2!=0){//i除2取余,为0则为偶数
oddSun+=i;//奇数和
}else {
evenSum+=i;//偶数和
}
}
System.out.println("奇数和为:"+oddSun);
System.out.println("偶数和为:"+evenSum);
}
}
- 练习用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个
public class ForDemo03 {
public static void main(String[] args) {
//用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个
for (int i = 0; i <= 1000; i++) {
if (i%5==0){
System.out.print(i+"\t");//print和println的区别是print输出问不换行,println输出完换行
}
if (i%(5*3)==0) {
System.out.println();
//System.out.println("\n");
}
}
}
}
- 练习打印九九乘法表
public class ForDemo04 {
//第一步完成1*1-9
//完成九九相乘
//去除重复项n<=i
//第四步换行
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) {
for (int n = 1; n <= i; n++) {
System.out.print(i+"*"+n+"="+(i*n)+ "\t");
}
System.out.println();
}
}
}