循环结构
循环结构有三种,分别是:while,do while和for,然后还有三种中断,或者说跳出循环,分别是:break,continue和return;为了接下来方便理解,这边先介绍一下三种跳出循环的方式
跳出循环的三种方式:break,continue,return:
break:指跳出当前循环。(只跳出一层循环,比如结束内循环)
continue:终止本次循环,进入下一个循环。
return:直接结束所有循环(结束当前循环所在的方法,return后面的内容,都不再执行,就好像结束main函数)
while循环
while 循环特点:
****不限次数的循环,满足某一条件的时候,跳出循环。
语法结构大致如下:
while(循环条件){
循环体;
}
//循环条件 :可以是一个布尔类型的表达式,也可以是一个布尔类型的值
while的嵌套:
while(){//外循环
while(){//内循环
}
}
举个栗子
public static void main(String[] args) {
int row = 0;
while (row < 5){
row++;
int col = 0;
System.out.println();
while(col<10){
col++;
System.out.print("*");
}
}
}
这个代码可以输出5*10的方阵。
public static void main(String[] args) {
int a = 0;
while(a<10){
a++;
int b = 0;
System.out.println();
while(b<10){
b++;
if(b==5){
break;//continue
}
System.out.println("内循环执行的次数:"+b);
//return;
}
}
}
用这个可以体现出break,continue和return的区别,无论是用continue替代break,还是把return放入结构中,会有不一样的效果结合这个代码的效果看上面的讲解,效果倍好!强烈推荐!当然,这个主要表现的是while的嵌套结构。
do while循环
do while循环就是不管三七二十一先上去干一架(先循环一次),然后在管你是不是可以循环,就是豪横,其他地方与while循环没有什么差别。
语法结构大致如下:
do {
循环体;
}while(循环条件);
//
for循环
for循环可以转化成while循环所以是可以互通的,语法结构大致如下:
for(循环变量;循环条件;循环变量变幻方式){
循环体
}
如何转换,看:
for(1;2;3){
4;
}
===================
1;
while(2){
4;
3;
}
举个for循环栗子:
这是一个求1~num的公式:
public static void main(String[] args) {
//求:1+2+3...+?
System.out.println("求1-?之间的和,请输入一个大于1的整数:");
Scanner scanner=new Scanner (System.in);
int num = scanner.nextInt();
int sum=0;
for(int a=1;a<=num;a++){
sum+=a;
}
System.out.println("输出:"+sum);
}
从上面我们可以看出:for里面可以定义变量;然后for循环还可以for(;;)这样用,这表示这是一个死循环,也就是无限循环。for(;j<10;j++),for(;j<10;)都是可以的,大家可以自己试一试,感受感受。
for循环的嵌套和while一样,直接上栗子:
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i = 1;i<=5;i++){
for(int j = 1;j<=10;j++){
if(i>=2&&i<=4){
if(j==1||j==10){
System.out.print("*");
}else
System.out.print(" ");
}else
System.out.print("*");
}
System.out.println();
}
}
这个可以显示一个5行10列的空心矩阵(部分地方没处理好,但不妨碍),观察这个是不是和while嵌套很像。
(个人学习总结,如有错误,敬请斧正,学习时间,20,10)