java流程控制

流程控制

用户交互Scanner

我们可以通过Scanner类来获取用户的输入

基本语法:

Scanner s=new Scanner(System.in);

通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前一般需要使用hasNext()与hasNextLine()判断是否还有输入数据

1.next():

  • 一定要读取到有效字符后才可以结束输入。

  • 对于输入有效字符之前遇到的空白,next()方法会自动将其去掉。

  • 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。

  • next()不能得到带有空格的字符串

2.nextLine():

  • 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。

  • 可以获得空白。

3.代码示例以及结果:

package c1;

import java.util.Scanner;

public class Demo1 {
   public static void main(String[] args) {
       //创建一个扫描器对象,用于接收键盘数据
       Scanner scanner=new Scanner(System.in);
       System.out.println("使用next方法接收:");
       //判断用户有没有输入字符串
       if(scanner.hasNext()){//简写了scanner.hasNext()==true
           //用next方式进行接收
           String str=scanner.next();
           System.out.println("输出的内容为"+str);

      }
       //凡是属于IO流的类如果吧关闭会一直占用资源,要养成良好习惯用完就关掉
       scanner.close();
  }
}
//输入为:hello world
//输出为:hello


package c1;

import java.util.Scanner;

public class Demo2 {
   public static void main(String[] args) {
       Scanner scanner = new Scanner(System.in);//alt+enter
       System.out.println("使用nextLine方式接收:");
       if(scanner.hasNextLine()){//去掉if判断语句也是可以的
           String str=scanner.nextLine();
           System.out.println("输出的内容为:"+str);
      }
       scanner.close();
  }
}
//输入为:hello world
//输出为:hello world

 

 

 

顺序结构

选择结构

  • 单层判断

    if(布尔表达式){

}

  • 双层

    if(布尔表达式){

    }else{

    }

  • 多层

    if(布尔表达式){

    }elseif(布尔表达式){

    }

  • switch case语句判断一个变量与一系列值中的某个值是否相等,每一个值称为分支。

    • switch语句的变量类型:(case标签必须为字符串常量或字面量)

      byte,short,int char,String

    • 在switch中case具有穿透性,故需要用break来进行一个判断的停止。

       //case穿透    switch匹配一个具体的值
             char grade='C';
             switch (grade){
                 case'A':
                     System.out.println("优秀");
                     break;//可选

       

 

循环结构

  1. while循环

    结构:

    while(布尔表达式){
    //循环内容
    }

     

  2. do....while循环

    先执行再判断,至少执行一遍

  3. for循环

    for(初始化值;条件判断;迭代)

  4. 增强for循环:

    for(声明语句:表达式){

    //代码句子

    }

    int[] numbers={10,11,12,13,14,};//定义了一个数组
           for(int i=0;i<5;i++){
               System.out.println(numbers[i]);//i表示数组下标值
          }
           System.out.println("==============");
           //遍历数组元素
           for(int x:numbers){
               System.out.println(x);
               //两个for语句都是一样的功能

     

break&continue

  1. break在任何循环语句的主体部分,均可以用break控制循环的流程,break用于强行退出循环,结束全部循环,不可以执行循环中剩下的语句

  2. continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环中尚未执行的语句,结束当前循环,可以执行下一次循环的语句。

posted @ 2021-11-15 19:57  是小嗝嗝呀  阅读(165)  评论(0)    收藏  举报