黑马程序员——循环

来源:互联网 发布:软件开发编程招聘 编辑:程序博客网 时间:2024/06/10 11:50

---------------------- 黑马程序员 Android培训、期待与您交流! ----------------------

循环结构



格式:

for(初始化表达式;循环条件表达式;循环后的操作表达式)

{

执行语句;

}

注:

a,for里面的连个表达式运行的顺序,初始化表达式只读一次,判断循环条件, 为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止。

b,while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是 在内存中释放。而while循环使用的变量在循环结束后还可以继续使用。

c,最简单无限循环格式:while(true) , for(;;),无限循环存在的原因是并不知道循 环多少次,而是根据某些条件,来控制循环。


For循环与While循环的区别

其实这两个可以互相代替的,比如说

for (int i = 0; i<10; i++) {...//插入语句 }

用while来写就是
int i = 0;
while (i<10) {
...//插入语句
i++;
}

for循环比较简洁,会比while更常用些,尤其是用array的时候,很方便的。

但是如果想做无限循环,while更方便点,比如说
int i = 1;
while (i == 1){ ... }

还有一种do..while,和while差不多,但是do...while在任何情况下都会先执行命令一次,即使i不符合设定条件,
do{
...
}while (i<10);

 

For循环可以将变量定义在循环体中,当循环结束后,会自动释放;



while与doWhile循环的特点

/* * While特点:先判断,后执行 *  * 定义初始化表达方式: * while(条件表达方式) * { * 循环体(执行语句) * } *  * doWhile特点:先执行语句,后判断(即使条件不成立,也要先执行一次) *  * do * { * 循环体(执行语句) * } * while(条件表达式) */package cn.jbit.output;public class wihle循环 {public static void main(String[]args){//While循环int x = 1;while(x<5){System.out.println("While循环打印:"+x);x++;}//doWhile循环int y = 0;do{System.out.println("doWhile循环打印:"+y);y++;}while(y>0 && y<10);}}


For循环

/* * 1.获取1-10的和,并打印 * 2.1-100之间  7的倍数的个数,并打印 */public class ForText2 {public static void main(String[]args){//第一题int sum=0;//定义变量接收和for(int i=0;i<=10;i++){sum+=i;/* * 这个被称之为累加思想。 * 原理:通过变量记住每次变化的结果。通过循环的方式进行累加动作。 */}System.out.println(sum);//第二题int k=0;for(int i=1;i<=100;i++){if(i%7==0){System.out.print(i+"\t");//输出是7倍数的数k++;//记录次数}}System.out.print(k);//输出次数/* * 计数器思想 * 通过一个变量记录住数据的变化。 * 也许通过循环完成。 */}}

For嵌套练习

public class For嵌套练习 {/* *第一题 * ** *** **** ***** *第二题112123123412345第三题九九乘法表*/public static void main(String[] args) {//第一题// 下面介绍一个不是规律的规律// 尖朝上的可以改变条件,让条件随着外层循环变化。// 尖朝下的,可以初始化值,让初始化值随着外层循环变化for(int x=0;x<5;x++){for(int y=0;y<=x;y++)//让y跟 着外层循环x的值变化{System.out.print("*");}System.out.println();}//第二题for(int x=1;x<=5;x++){for(int y=1;y<=x;y++){System.out.print(y);}System.out.println();}//第三题for(int x=1;x<=9;x++){for(int y=1;y<=x;y++){System.out.print(y+"*"+x+"="+x*y+"\t");}System.out.println();}}}
public class For循环等腰三角形 {public static void main(String[] args) {/*----*---* *--* * *-* * * ** * * * *等腰三角形*/for(int x=0;x<5;x++)//此循环控制行数{for(int y=x+1;y<5;y++)//此循环控制-号数量{System.out.print(" ");}for(int z=0;z<=x;z++)//此循环控制*号数量{System.out.print("* ");}System.out.println();}}}


循环流程控制语句

break(跳出)continue(继续)

break语句:应用范围:选择结构和循环结构。

continue语句:应用于循环结构。

注:

a, 这两个语句离开应用范围,存在是没有意义的。

b, 这个两个语句单独存在下面都不可以有语句,因为执行不到 。

c, continue语句是结束本次循环继续下次循环。

d, 标号的出现,可以让这两个语句作用于指定的范围。


public class BreakContenul {public static void main(String[] args) {// breakw:for(int x=0;x<3;x++)//<span style="color:#ff0000;">可以给循环定义标号</span>{n:for(int y=0;y<4;y++){System.out.print("x="+x);break n;//<span style="color:#ff0000;">根据标号,选择结束循环体</span>}}//Continue;只作用于循环结构,继续循环。特点:结束本次循环,进行下次循环。for(int i=0;i<10;i++){if(i%2==1)continue;System.out.print("x="+i);}//嵌套方式x:for(int x=0;x<3;x++)//可以给循环定义标号{y:for(int y=0;y<4;y++){System.out.print("x="+x);continue x;//根据标号,选择跳出循环体}}//总结:break和continue单独存在时,下面可以有任何语句。因为都执行不到}}


---------------------- 黑马程序员 Android培训、期待与您交流! ----------------------


0 0