java中的常用语句

java程序的流程控制语句

1.顺序结构

java程序从上到下一行一行地执行,中间没有判断和跳转,直到程序结束。

2.选择结构 

根据判断条件的结构,选择性的执行。

    2.1 if语句

格式1:if(判断条件){ java代码  } 
如果判断条件为true时执行java代码;如果判断条件为false时不执行java代码。
格式2:if(判断){ 
                       java代码1 
                     }else{
                       java代码2
                     }
如果判断条件为true时执行java代码1;如果判断条件为false时执行java代码2。
此格式可以使用三元表达式代替:(判断条件)? 数值1:数值2  
例如:
public  class  IfDemo{
    public  static  void  main(String  args[]){
     /*
     int  a=30;
     int  b=20;
     if(a<b){
            System.out.println("a小于b");
        }
      System.out.println("执行结束!");
     */
     /*
       int  a=30;
       int  b=20;
       if(a<b){
            System.out.println("a小于b");
        }else{
            System.out.println("a大于b");
        }
       System.out.println("执行结束!");
    */
     // 三元运算符:  (判断)? 数值1:数值2 ---if-else语句
     /*
      int  a=30;
      int  b=20;
      System.out.println((a<b)?"a小于b":"a大于b");
      System.out.println("执行结束!");
     */
   }

}

格式3:if(判断1){ 
                         java代码1 
                        }else if(判断2){
                         java代码2
                        }else  if(判断3){
                         java代码3
                        }  
                        .....
                        else  if(判断n){
                                java代码n
                           }else{
                                java代码m
                            }
               判断1为true时执行java代码1,结束;
               判断1为false时执行判断2;
               判断2为true时执行java代码2,结束;
               判断2为false时执行判断3;
               .......

               如果所有的判断都是false,那么就会值最后一个else中的java代码m。

例如:

import  java.util.Scanner;
public  class  IfDemo1{
      //创建Scanner类的对象
      Scanner  input=new Scanner(System.in);
     //提示用户
     System.out.println("请输入成绩值:");
     //接收成绩值
    int  chengji=input.nextInt();
    if((chengji>=60 && chengji < 70)){
         System.out.println("成绩:及格");
    }else  if((chengji>=70 && chengji<=80)){
           System.out.println("成绩:良好");
     }else  if((chengji>80 && chengji<=90)){
           System.out.println("成绩:优秀");
      }else  if((chengji>90 && chengji<=100)){
           System.out.println("成绩:异常优秀");
      }else{
           System.out.println("成绩:不及格");
    }
   }
}

格式4:if(判断1){
                          if(判断2){
                                   java代码1
                                 }else{
                                    java代码2
                                 }
                      }ese{
                         if((判断3){
                                 java代码3
                        }else{
                                 java代码4
                         }

                   }

以上格式是一个if...else...结构的嵌套。

例如:
import  java.util.Scanner;
public  class  IfDemo2{
    public  static  void  main(String  args[]){
      //创建Scanner类的对象
      Scanner  input=new Scanner(System.in);
     //提示用户
     System.out.println("请输入年龄:");
     //接收成绩值
    int  age=input.nextInt();
     if(age>20){
             if(age<45){
                  System.out.println("年龄可用");
            }else{
                  System.out.println("年龄过大");
            }
      }else{
         if(age>0){
                 System.out.println("年龄过小");
               }else{
                 System.out.println("输入错误");
           }
     }
   }

}

    2.2 switch语句

switch语句可以代替if(){}else if(){}结构

       格式:
        switch(表达式){
            case  常量值1:java语句1;[break;]
            case  常量值2:java语句2;[break;]
           .......
            case  常量值n:java语句n;[break;]
            [default: java语句m;[break;]]
         }
          先计算表达式的结果,如果表达式的结果与 case后面的常量值比较,
          如果相同,执行该case后面对应的java语句,对应的java语句执行以后,检查是否还有[break;]
                             若果有[break;]语句跳出 switch语句。
                             若果没有[break;],执行下一个case对应的java语句,直到出现[break;]或者执行完毕。
          如果不相同,与下一个case后面的常量值比较,
              ...
          若果与case后面的常量值比较都不同那么就执行default后面的java语句.

注意:表达式的运算结果可以是byte  short  char  int  枚举  String[jdk7.0]

例如:选择题的判断结构
import java.util.Scanner;
public  class  SwitchDemo{
    public  static  void  main(String  args[]){
     System.out.println("题目:doouble  dou=12.5; int i=(int)dou;");
     System.out.println("A、10  B、11  C、12  D、11.5");
     System.out.println("请选择正确答案:");
     Scanner input=new Scanner(System.in);
     String answer=input.next();
     /*
     switch(answer){
        case  "A":System.out.println("答案A为10");break;
        case  "B":System.out.println("答案B为11");break;
        case  "C":System.out.println("答案C为12");break;
        case  "D":System.out.println("答案D为11.5");break;
        default:System.out.println("没有改选项!"); break;
     }
     */
     //charAt(0);把字符串中的第一个位置上的数据转换成字符型【char】
     char newanswer=answer.charAt(0);
     switch(newanswer){
        case  'A':System.out.println("答案A为10");break;
        case  'B':System.out.println("答案B为11");break;
        case  'C':System.out.println("答案C为12");break;
        case  'D':System.out.println("答案D为11.5");break;
        default:System.out.println("没有改选项!"); break;
     }
   }

}

3.循环结构  

按照一定条件,将程序循环执行。

    1.for循环

格式:
for(初始条件 ; 判断条件 ;循环增量/减量){
       需要被循环执行的java代码

}

例如:
public  class  ForDemo{
   public  static void main(String args[]){
     //循环输出1--10的整数
    /*
     for(int  i=1;i<=10;i++){
            System.out.println("i=="+i);
        }
    */
   //循环输出10--1的整数
   /*
   for(int i=10;i>0;i--){
           System.out.println("i=="+i);
     }
   */
   //计算1--10的整数和
   int  sum=0;
   for(int  i=1;i<=10;i++){
        sum=sum+i;
   }
   System.out.println("sum=="+sum);
  }

}

    2.while循环

格式:
  while(判断条件){
       需要被循环执行的java代码 
  }
初始条件被定义在循环结构之外。
循环增量/减量书写在循环体的结尾。
例如:
public  class  WhileDemo{
   public  static void main(String args[]){
     //循环输出1--10的整数
   /*
    int  i=1;
    while(i<=10){
      System.out.println("i=="+i);
      i++;
     }
  */
   //循环输出10--1的整数
   /*
    int  i=10;
    while(i>=1){
      System.out.println("i=="+i);
      i--;
     }
    */
   //计算1--10的整数和
    int  i=1;
    int sum=0;
    while(i<=10){
           sum=sum+i;
           i++;
     }
    System.out.println("sum=="+sum);
   }

}

3.do...while循环

格式:do{
                  需要被循环执行的java代码 
            }while(判断条件);
初始条件被定义在循环结构之外。
循环增量/减量书写在循环体的结尾。
public  class  DoWhileDemo{
   public  static void main(String args[]){
     //循环输出1--10的整数
    /*
    int i=1;
    do{
          System.out.println("i=="+i);
          i++;
      }while(i<=10);
    */
   //循环输出10--1的整数
   /*
   int i=10;
    do{
          System.out.println("i=="+i);
          i--;
      }while(i>=1);
    */
   //计算1--10的整数和
    int i=1;
    int sum=0;
    do{
          sum=sum+i;
          i++;
      }while(i<=10);
     System.out.println("sum=="+sum);
  }

}

总结:1、for循环 与 while循环和do...while循环的比较
                for循环---要清楚自己的循环次数。

                while循环和do...while循环---不需要清楚自己的循环次数

        2、while循环与do...while循环的比较
                while循环--先判断后执行
                do...while循环--先执行后判断

                同等条件下do...while循环比while循环多执行一次。

猜数字:
1.没有限制条件的猜数字,直至猜对
import java.util.Scanner;
public  class  CaiShuZi{
    public static  void main(String args[]){
      //定义一个boolean值
     boolean flag=true;
     //得到一个随机数
     //随机产生一个0--1之间的数字
     double num1=Math.random();
     //转换成0--100之间的小数
     num1=num1*100;
     int num2=(int)num1;
     System.out.println("num2:"+num2);
     //创建Scanner对象
    Scanner  input=new Scanner(System.in);
     while(flag){
           System.out.println("请输入一个0--100之间的整数:");
           int mynum=input.nextInt();
           if(mynum>num2){
                 System.out.println("太大了,换个小一点的,来试试!");
             }
           if(mynum<num2){
                 System.out.println("太小了,换个大一点的,来试试!");
             }
          if(mynum==num2){
                 System.out.println("恭喜你猜对了,游戏结束!");
                 flag=false;
             }
         }
   }
}

大家可以将上面的实例修改成,有限制条件的猜数字程序。试试吧!

4.break语句

break语句出现表示终止或者中断程序的执行。
break语句可以在在switch语句和循环语句中出现;出现在switch语句中表示,跳出switch语句的执行;出现在循环语句中,中断循环的执行。
例如:
public  class  BreakDemo{
   public  static  void  main(String  args[]){
     //循环输出1--10的整数,当数字等于5的时候,中断输出
    for(int  i=1;i<=10; i++){
           System.out.println("i=="+i);
           if(i==5){
               break;
              }
        }
   }
}
当循环是一种嵌套结构的时候,使用break表示跳出当前循环。
 for(int  i=1;i<=10;i++){
          System.out.println("外层循环语句中i==="+i);
          for(int j=1;j<=10;j++){
  System.out.println("内层循环语句中j==="+j);
                   if(j==5){
                            break;
                          }
            } 
           if(i==5){
                     break; 
                  }
        }

5.continue语句

 continue语句继续【结束本次循环,进入下次循环】
例如:
public  class  ContinueDemo{
   public  static  void  main(String  args[]){
        //continue表示结束本次循环进入下次循环
        int  i=1;
       while(i<=10){
            i++;
            if(i==5){
               continue;
             }  
           System.out.println("i==="+i);
       }
  }
}

6.增强的for循环语句--JDK1.5对for语句进行了改进。

普通的for循环
for(初始条件;判断条件;循环增量/减量){
    被执行的java代码
}
遍历数组---包数组中保存的数据逐个获取出来。
例如:
public  class  GetArrayValue{
   public  static  void  main(String  args[]){
       //定义一个char数组
       char  ch_name[]={'h','e','l','l','o'};
      //通过普通的for循环遍历数组
      for(int  i=0;i<ch_name.length;i++){
             System.out.println("数组值="+ch_name[i]);
         } 
  }
}
增强的for循环语句--遍历数组
格式:
for(数组的数据类型  变量名称:数组名称){
      
}
例如:
public  class  GetArrayValue{
   public  static  void  main(String  args[]){
       //定义一个char数组
       char  ch_name[]={'h','e','l','l','o'};
     //增强的for循环语句遍历数组
     for(char  c_name:ch_name){
           System.out.println("增强的for循环中的数组值="+c_name); 
    }
  }
}
以上是我们在java中经常使用的程序流程的控制语句。

猜你喜欢

转载自blog.csdn.net/guizhaiteng/article/details/79856587