关闭

Java内功提升之流程控制语句

标签: java程序员编程流程控制blog
310人阅读 评论(0) 收藏 举报
分类:

(一)java条件语句之if

          if语句,用于需要判断满足条件后,执行程序的情况(这不是废话么)。

          if语法:

                  if(条件){

                           满足条件时执行的代码

                  }

          执行过程如下:

                 

       例:

        String str = "一份耕耘";

       if(str .equals( "一份耕耘“)){

                  System.out.println("一份收获");

        }

   注:如何if条件语句成立时的执行语句只有一条就不需要加‘ { } ’ , 反之 ,则需要加入。

(二)java条件语句之if....else

       if...else 语句用于当条件成立时,则执行if 块中的代码,反之,则执行else中的代码。       

      语法:

            if(布尔表达式){

               if的代码块

               }else{

                   else的代码块

                }

     执行过程:

                   

      例:

           String str = "一份耕耘";

       if(str .equals("一份耕耘“)){

                  System.out.println("一份收获");

        }else{

                  System.out.println("没有收获");

       }

(三)java条件语句之多重 if

          多重if语句 ,当条件1不成立时,才会进行条件2的判断,若条件1与条件2均不成立时,则执行else块内的代码。

          语法:

                 if(条件一){

                         /*if的代码块*/

                 }else if (条件二){

                      /*  else  if 的代码块*/

                 }else{

                        /*else的代码块*/

                 }

           执行流程:

                

          例:

              String str = "一份耕耘";

       if(str .equals("一份耕耘“)){

                  System.out.println("一份收获");

        }else if( str .equals( "俩份耕耘“)){

                  System.out.println("俩份收获");

       }else{

               System.out.println("没有收获");

                 }

(四)java语句之嵌套if

           嵌套if语句 ,就是当外层if的条件成立时,才会判断内层if的条件。

         语法:

              if(条件1){

                      if(条件2){

                             /*条件2的代码块*/

                        else{

                          /*   内层else的代码块*/

                         }

              }else {

                   /*外层else的代码块*/

             


         执行过程

                    

                  

                        String str1 = "开学";

                        String str2 = "学习“

                       if(str1.equals("开学“)){

                                   if(str2str .equals("学习“)){

                                                 System.out.println("一份耕耘,一份收获");

                                    }else{

                                                  System.out.println("注定搬砖!");

                                             }

                       }else{

                             System.out.println("去小美家玩耍!");

                       }

(五)java条件语句之switch

          switch语句 ,当需要对选项进行等值判断时,使用switch语句更加简洁明了。

          语法:

                 switch(表达式){

                        case  值1 :

                            执行代码块 1

                            break;

                       case 值 2:

                            执行代码块 2

                            break;

                       case 值 n:

                            执行代码块 n

                            break;

                      default  :

                           默认执行的代码

            }

       说明:当switch语句后面的值与case语句值相同时,则从该位置开始执行,知道遇到break停止或者switch语句执行完毕;若没有匹配的case语句则执行default块代码。

       例:

              int fruit = 1 ;

               switch (fruit) {

                       case 1 :

                                    System.out.println("你要的是香蕉!");

                                     break;

                       case 2:

                                   

                                     System.out.println("你要的是橘子!");

                                     break;

                       case 3:

                                 

                                      System.out.println("你要的是石榴!");

                                     break;

                     default:

                                    

                                  System.out.println("你要的是苹果!");

                  注:1)switch语句的小括号中必须是整型或字符型

                          2)case后面的值可以是常量数值,也可以是常量表达式(比如:7+89),但不可以是变量或者带有变量的表达式,例:str * 9

                         3)case匹配后,执行case中的代码,如没有遇到break语句,则继续执行,直到执行完default代码块.

                         4)功能相同的case语句可以合并起来,

                           例:

                                   case 2:

                                   case 3:

                                             System.out.println("你要的是石榴!");

                                            break;

                            5)default可以出现在任意的位置,也可以省略。

(六)java循环语句之while

                    java常用的3中循环:while ,do....while , for

                   1)while循环的语法

                                while(判断语句){

                                                  循环操作

                                    }

                     执行描述:(1)先判断,后执行;即先对while的条件进行判断,然后,执行循环操作,直到程序执行完毕。

                                    例:

                                            int  n = 66;

                                            while( n <=100){

                                                               System.out.println("一份耕耘,一份收获!");

                                                                       }

                    2)java循环语句之do ...while 

语法: do{

循环操作

}while(判断条件);

执行过程:

  (1)先执行,后判断,即先执行一次循环操作,然后判断循环条件是否成立。若成立,则继续执行,直到结束。

!!!!所以,do......while 语句至少执行一次 !!!!

  int  n = 66;

                                          do{

                                                               System.out.println("一份耕耘,一份收获!");

                                                                       }  while( n <=100);


3)java循环语句之for

语法:

for(循环变量初始化;循环条件;循环变量变化){

循环操作

}

                           例:

   for(int i = 10 ;i<= 200 ;i++){

System.out.println("一份耕耘,一份收获!");

}

注意:

1)for后面括号中的循环变量初始化 ,循环条件,循环变量变化------必须用“ ;”(英文的)隔开,三个表达式均可以省略,但是“ ; ‘必须保留。

(1)省略-------------循环变量初始化 ,可以这样写:

int i = 0;

for( ;i<= 200 ;i++){

System.out.println("一份耕耘,一份收获!");

}

2)省略-------------循环条件 ,可以这样写:(这就是传说中的”死循环“),当然,我们可以使用break语句,强行停止。

for(int i = 0 ; ; i++){

System.out.println("一份耕耘,一份收获!");

}

3)省略-------------循环变量变化,可以在循环体中进行循环变量变化。

for(int i = 0 ; i<= 200; ; ){

System.out.println("一份耕耘,一份收获!");

i++;

}

4)for循环语句中的循环变量初始化 ,循环变量变化部分,可以使用” , “ 同时初始化或改变多个循环变量的值,如:

for( int i = 3 , j = 59 ; i <=100 ;i++ ,j - -){

System.out.println(i + ”+“ + j + ” = “ +(i + j ));

}

4)break 指定退出循环语句

break 语句可以退出指定的循环,直接执行循环后面的代码。

例:

public static void main(String[] args) {

if( int i = 1 ; i <25 ; i++){

for(( i > 2 ) && ( i % 3 == 0 )){

break ;

}

System.out.println(i );

}

System.out.println("over ");

}

运行结果:

1

2

over


5) continue跳出循环体语句,执行下一次语句

例:

for ( int i = 1 ; i <= 8; I++){

//判断i是否是偶数

if ( i % 2 !=0 ){

continue ; //通过continue结束本次循环,直接进入下一次循环。

}

}

运行结果:

2

4

6

8

(七)java循环语句之多重循环

多重循环 ,指的是循环体中包含循环语句的结构。

说明:

例:

//外层循环控制打印的行数

for ( int i = 1 ; i <= 3 ; i++ ){

//内层循环控制每行打印的 * 号数

for (int j = 1 ; j <=8 ; j++ ){

System.out.print("*");

}

//每行打印完毕换行

System.out.println("*");

}

运行结果:

* * * * * * * *

* * * * * * * *

* * * * * * * *

编程题目:打印菱形


输出结果:


打印菱形!!!!
   *
  ***
 *****
*******
 *****
  ***
   *


分析与理解:

1)程序的控制共分为3块,控制行数块,控制空格块 ,控制星号块.

 

public class rhombus {
public static void main(String args[]){


System.out.println("打印菱形!!!!");
/*(外层循环控制行数)首先将菱形看成上下结构,即上面5行下面4行的结构,
所以,菱形上面for循环有4次,下面for循环有3次*/

//控制输出的行号-------------------------输出的行号:1 ,2 ,3 ,4
for(int i=1;i<5;i++){  
// 内层循环变量的最大值和外层循环变量的值相等

//控制每行输出的空格---------输出空格个数: 4 ,3  ,  2 ,1
for(int j=1;j<5-i;j++){  
System.out.print(" ");  
}  

 // 控制每行的*号数-----------输出的星号数:  1,3 , 5 , 7
for(int k=1;k<=2*i-1;k++){      
System.out.print("*");  
}  
// 每打印完一行后进行换行
System.out.println();  
}  
for(int i=3;i>0;i--){  
for(int j=3-i;j>=0;j--){  
System.out.print(" ");  
}  
for(int k=2*i-1;k>0;k--){  
System.out.print("*");  
}  
System.out.println();  
}
}
}



注:

1)分析下程序中行数,空格数,星号数可以观察到,行数 与 空格数互为倒序,星号数 与 行数的关系,则是星号数均为奇数,而行数均为偶数。

                   

                                    

                   

                   

                  



         

     

      

        

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:164027次
    • 积分:2742
    • 等级:
    • 排名:第13613名
    • 原创:107篇
    • 转载:16篇
    • 译文:0篇
    • 评论:2条