for循环
for循环的出现就是为了解决代码的复用性
格式:
for(变量初始化表达式;布尔类型条件表达式;更新表达式){
java语句;
}
先执行变量初始化表达式进行变量的初始化,然后判断条件表达式的结果是否为true,如果是true就执行java语句,java语句执行完以后执行更新表达式,再进行条件表达式的判断,如果结果还是为true那就继续执行java语句,一直到条件表达式的结果为false
for循环的书写格式2
int a = 10;
for (;a < 10;){
a++;
System.out.println("hello");
}
在for循环的书写中,可以把变量定义在循环外,以便于再循环结束后,防止变量a被释放,依旧可以访问变量a
求1-100以内奇数的和
int s = 0;
for(int i = 1;i <= 100;i +=2){
s += i;
System.out.println(s);
}
for循环的嵌套
简单的说,就是把内循环看成一句话,其他的变形全是文字游戏
int k = 0;
for(int i = 0;i <= 10;i++){
for(;k < 2;k++){
System.out.println(k);
}
}
乍一看 代码应该输出11次的0和1 但是因为内循环的k初始化在变量外,内循环第一次运行结束后k为2,第二次运行时,因为不能进行变量k的初始化,变量k还是2,所以内循环里的打印输出一次都不执行
99乘法表
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
....
......
1*9=9 2*9=18.............................9*9=81
for(int i = 1;i < 10;i++){
for(int k = 1;k <= i;k++){
System.out.print(k+"*"+i+"="+(i*k));
System.out.print(" ");
}
System.out.println();
}
while循环
格式
变量初始化表达式;
while(布尔类型条件表达式){
更新表达式;
java语句;
}
|
|
|
例子
int i = 0;
while(i < 10){
System.out.println("i = " + i);
i++;
}
while与for的区别就是 for循环结束后变量可能释放,而while不会释放变量,此代码的i最后的值为10
do while循环
格式
int i = 0;
do{
java语句;
更新语句;
}while(i <10);
先进行变量的初始化,然后执行循环体一次,在进行变量更新,之后进行条件判断,如果结果为true继续执行循环体,否则循环结束
注意: do…whlle循环语句最后 必要要有分号最为结束语
而且do…while循环至少实行一次
do{
System.out.println("Hello World!");
}while(false);
break
一个单词就可以当做一句java语句
跳出终止当前循环的意思运用在 switch for while do…while 语句中
主要终止离他最近的循环体语句
for(int i = 0; i < 10; i++){
if(i == 5){
// break;语句会让离它最近的循环终止结束掉。
break; // break;终止的不是if,不是针对if的,而是针对离它最近的循环。
}
System.out.println("i = " + i); // 0 1 2 3 4
}
当循环嵌套先跳出外循环时
给内外循环分别起名字
a:for(int k = 0; k < 2; k++){
b:for(int i = 0; i < 10; i++){
if(i == 5){
break a; // 终止指定的循环。
}
System.out.println("i ===> " + i);
}
}
continue
contionue为跳过当前循环,直接进项下一个循环的意思
for(int i = 0; i < 10; i++){
if(i == 5){
continue;
}
System.out.println("i = " + i); // 输出0 1 2 3 4 6 7 8 9
}