Java 流程控制

Java流程控制

用户交互Scanner

  1. 用next方式接收数据
        import java.util.Scanner;
        public class Demo1_Scanner {
        	public static void main(String[] args) {
        		// 创建一个扫描对象,用next接收键盘输入数据
        		Scanner sc = new Scanner(System.in);
        		// 输入后按回车继续执行下一步
        		// 判断用户是否有输入字符
        		if (sc.hasNext()) {
        			// 若有,则接收,用字符串存储
        			String str = sc.next();
        			// 将其输出
        			System.out.println("输入的内容为:" + str);
        		}
                // 关闭scanner,节省资源
        		sc.close();
        	}
        }

next
- next只输入一个字符串,不输入空格后的数据
- 即以空格为结束
3. 用nextLine方式接收数据

   import java.util.Scanner;
   public class Demo1_Scanner {
   	public static void main(String[] args) {
   		// 创建一个扫描对象,用nextLine接收键盘输入数据
   		Scanner sc = new Scanner(System.in);
   		// 输入后按回车继续执行下一步
   		// 判断用户是否有输入字符
   		if (sc.hasNextLine()) {
   			// 若有,则接收,用字符串存储
   			String str = sc.nextLine();
   			// 将其输出
   			System.out.println("输入的内容为:" + str);
   		}
   		// 关闭scanner,节省资源
   		sc.close();
   	}
   }

nextLine

随机数Random

  1. 概述:类似Scanner,是Java提供的API,提供产生随机数功能
  2. 使用步骤:
    • 导包
      import java.util.Random;
      
    • 创建对象
      Random r = new Random();	//r为变量名
      
    • 产生随机数
      int n = r.nextInt(10);
      /*
      	获取数据范围:[0,10),即包括0,不包括10
      */
      

三种控制结构

顺序结构

  1. 最基本、最简单的算法结构,任何算法都离不开的结构
  2. 按顺序一句一句的执行
    顺序结构

选择结构

  1. if单选择结构
    • 语法:
     if(布尔表达式){
      	 //若布尔表达式为true将执行的语句  
     }

单选择

  1. if双选择结构
    • 语法
     if(布尔表达式){
         //若布尔表达式为true则执行
     }else{
         //若布尔表达式为false则执行
     }

双选择

  1. 嵌套if结构
    • 语法
     if(布尔表达式1){
         //若布尔表达式1为true则执行
     }else if(布尔表达式2){
         //若布尔表达式2为true则执行
     }else{
         //若布尔表达式均为false则执行
     }

多选择

  1. switch多选择结构
    • 语法:
     switch(expression){
         case value1:
             //语句
             break;
         case value2:
             //语句
             break;
         default:
             //语句
     }
  • 通过sweitch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支
  • switch语句中变量类型可以为:
    • byte、short、int、或char
    • javaSE开始,sweitch字符串支持String类型
    • 同时case标签必须为字符串常量或自变量
  • switch具有穿透现象
    • 当case中有符合条件时,将执行该case及其下的所有case
    • 使用break跳出语句,终止穿透现象
    • default:
      • 只在所有case都不符合时执行
      • 不参与穿透现象

循环结构

  1. while循环
    • 语法格式:
          while(布尔表达式){
              //循环内容
          }
      
    • 只要布尔表达式为true,循环则一直执行
  2. do…while循环
    • 与while循环类似,但至少会执行一次
      • 其为先执行后判断
    • 语法格式:
      do{
      	//代码语句
      }while(布尔表达式);
      
  3. for循环
    • 支持迭代的一种通用结构
    • 是最有效、灵活的循环结构
    • 执行次数在执行前决定
    • 语法格式:
      for ( 初始化 ;  布尔表达式 ; 更新 ){
      	// 代码语句
      }
      
  4. Java5中引入增强for循环,主要用于数组
    • 语法格式:
      for ( 声明语句 : 表达式 )
      {
      	//代码语句
      }
      
      • 声明语句: 声明新的的局部变量
        • 数据类型 变量名
        • 该变量的类型必须和数组元素的类型匹配
        • 其作用域在循环语句块
        • 其值与此时数组元素的值相等
      • 表达式:要访问的数组名或集合对象,或返回值为数组的方法
  5. 循环控制:
    • break
      • 可用于任何循环主体部分
      • 用于强制退出循环,不执行循环中剩余语句
    • continue
      • 用于循环语句中
      • 跳出本次循环,开始下一次循环
    • goto
      • 是Java的一个保留字,但未正式使用
      • 类似带标签的break和continue
        • 标签:指后面跟着一个冒号的标识符,如:label:
        • Java用到标签的地方:循环语句之前
          • 作用:break和continu中断循环会到存在标签的地方
  6. 死循环
    • 格式
      • for死循环
        for( ;  ; ){
        
        }
        
      • while死循环
        while(true){
        
        }
        
      • do…while死循环
        do{
        
        }while
        
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值