Day03

文章介绍了如何在IDEA中构建文档,并详细讲解了Java编程中的用户交互Scanner类的使用,包括next()、nextLine()方法。接着,文章涵盖了编程的基础结构,如选择结构(if、else、switch)、循环结构(while、do...while、for)以及方法定义和调用。此外,还提到了方法重载、命令行参数传递、可变参数和递归的概念。最后,提出了编写一个具备加减乘除功能的计算器作为作业任务。
摘要由CSDN通过智能技术生成

在IDEA中构建Doc文档

工具栏

在这里插入图片描述

用户交互Scanner

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

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

nextLine()以Enter为结束符

注意:关闭类

​ Demo01、02、03

​ 输入多个数字进行求和、求平均数 Demo05

顺序结构

选择结构

  • if单选择结构

    if(布尔表达式){
        //如果布尔表达式值为true
    }
    
  • if双选择结构

    if(布尔表达式){
        //如果布尔表达式值为true
    }else{
        //如果布尔表达式值为flase
    }
    
  • if多选择机构

    if(布尔表达式1){
        //如果布尔表达式1值为true
    }else if(布尔表达式2){
        //如果布尔表达式2值为true
    }else if(布尔表达式3){
        //如果布尔表达式3值为flase
    }else{
        //如果以上布尔表达式都不为true
    }
    
  • 嵌套的if结构

    if(布尔表达式1){
        //如果布尔表达式1值为true
        if(布尔表达式2){
        	//如果布尔表达式2值为true	
    	}
    }
    
  • Switch多选择结构

    switch(expression){
        case value:
            //语句
            break; //可选
        case value:
            //语句
            break; //可选
         //可以有任意数量的case语句
        default:  //可选
            //语句
            
    }
    
    //支持字符串String类型
    //反编译操作
    

循环结构

  • while循环

    while(布尔表达式){
    	//循环内容    
    }
    //先判断后执行
    //大多数情况会让循环停止下来,需要一个让表达式失效的方式来结束循环
    //避免死循环
    //计算1到100累加 Demo03
    
  • do…while循环

    do{
        //代码语句
    }while(布尔表达式);
    //总是保证循环体会被至少执行一次,先执行后判断
    
  • for循环

    for(初始化;布尔表达式;更新){
        //代码语句
    }
    //支持迭代的通用结构,最有效、最灵活的循环结构
    //循环执行次数在执行前就确定了
    //快捷方式100.for
    //计算0-100之间的奇数和偶数的和
    //用while或for循环输出0-1000之间能被5整除的数,并且每行输出3个
    //打印九九乘法表 Demo04
    
  • 增强for循环

    for(声明语句:表达式)
    {
    	//代码句子    
    }
    //用于数组和集合的增强型for循环,遍历数组元素 Demo05
    

break continue

  • break用于强行退出循环
  • continue用于终止某次循环
  • 标记 LabelDemo 跳出内循环

方法

方法定义

方法是语句的集合,它们在一起执行一个功能

  • 方法是解决一类问题的步骤的有序集合

  • 方法包含与类或对象中

  • 方法在程序中被创建,在其他地方被引用

    一个方法只完成一个功能

    修饰符 返回值类型 方法名(参数类型 参数名){
        ...
        方法体
    	...
        return 返回值;
    }
    //参数:实参、形参
    

方法调用

​ 对象名.方法名(实参列表)

  1. 当返回一个值时,方法调用通常被当做一个值

    int larger = max(30,40)
    
  2. 如果返回值是void,方法调用一定是一条语句

    System.out.println("Hello,xiaobai!");
    

    值传递(java) 引用传递 ??

方法重载

重载就是在一个类中,有相同的函数名称,但形参不同的函数

重载规则

* 方法名称必须相同
* 参数列表必须不同(个数不同、类型不同、参数排列顺序不同等)
* 返回类型可以相同也可以不同
* 仅仅返回类型不同不足以成为方法的重载

命令号传递参数

​ 通过终端窗口编译文件 ——javac 文件名.java

​ 通过java 文件名运行文件 注意:运行文件时可在后方传递参数 且需再文件包路径下运行
在这里插入图片描述

可变参数

不定项参数

  • 在方法声明中,在指定参数类型后加一个省略号(…)

  • 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明

    public static void printMax(double... numbers){
        if(numbers.length == 0){
            System.out.println("no argument passed");
            return;
        }
        
        double result = numbers[0];
        
        //排序!
        for(int i = 1; i < numbers.length; i++){
            if(number[i] > result){
                result = numbers[i];
            }
        }
        System.out.println("The max value is" + result);
    }
    

递归

​ 递归就是:自己调自己 Demo06

递归结构包括两个部分:

	* 递归头:什么时候不调用自身方法。如果没有头,将陷入死循环
	* 递归体:什么时候需要调用自身方法

能不用就不用
在这里插入图片描述

作业:写一个计算器,要求实现加减乘除功能,并且能够循环接收新的数据,通过用户交换实现

思路:

* 写四个算法:加减乘除
* 利用循环+switch进行用户交互
* 传递需要操作的两个数
* 输出结果![在这里插入图片描述](https://img-
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值