Java入门(第九章)- 方法的使用1-4关

第1关:如何定义方法


任务描述

本关任务:定义一个用来和老师打招呼的方法。

相关知识

为了完成本关任务你需要掌握:1. 什么是方法; 2. 怎么定义和使用方法。

我们现阶段编写的代码都是放在main函数中,不过如果我们要做一个大型的项目,把所有的代码都放入main方法中有什么缺陷呢?

  1. 代码庞大;
  2. 难以阅读;
  3. 难以维护;
  4. 代码难以重用;
  5. 不利于合作开发。

怎么解决呢?
将庞大的程序划分为不同的功能小块,逐个突破,就像手机和电脑一样,把一整个电脑拆分成一个个的小功能块,例如内存,CPU等。然后在主板中将这些功能模块组合。
这里主板就相当于main方法,CPU,内存这些模块,就相当于我们自己定义的方法,接下来我们就来认识一下Java中的方法吧!

什么是方法

方法也叫函数,就是用来解决一类问题的代码的有序组合,是一个功能模块

怎么定义和使用方法

一般情况下,定义一个方法的语法是:

其中:

  1. 访问修饰符:在现阶段你只需要记住访问修饰符都用public即可;

  2. 返回值类型:方法返回值的类型,如果方法不返回任何值,则返回值类型指定为void;如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用return语句返回值;

  3. 方法名:定义的方法的名字,必须使用合法的标识符;

  4. 参数列表:传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开。

根据方法是否带参、是否带返回值,可将方法分为四类:

  • 无参无返回值方法;

  • 无参带返回值方法;

  • 带参无返回值方法;

  • 带参带返回值方法。

在本关你需要学习的是无参数无返回值方法。

方法的使用分两步:

第一步,定义方法:

例如:下面代码定义了一个方法名为 helloEducoder ,没有参数,且没有返回值的方法,执行的操作为输出 welcome to educoder

注意哦:

  1. 方法体放在一对大括号中,实现特定的操作;

  2. 方法名主要在调用这个方法时使用,需要注意命名的规范,一般采用第一个单词首字母小写,其它单词首字母大写的形式;

  3. 现阶段我们使用的方法都是static(静态的)。

第二步:调用方法:

输出:

welcome to educoder

编程要求

根据提示,在右侧编辑器Begin-End处补充代码,定义一个方法名为hello的方法用来和老师打招呼;
调用此方法输出如下结果:

hello teacher!

测试说明

平台会对你编写的代码进行测试,若与预期输出相同,则算通关。


开始你的任务吧,祝你成功!

代码:

package step1;

public class HelloWorld {

    /********** Begin **********/

    public static void hello(){//定义一个方法,用来和老师打招呼

            System.out.println("hello teacher!");

        }

    /********** End **********/ 

    public static void main(String[] args) {

        /********** Begin **********/   

        

        hello();//调用方法 

        /********** End **********/

    }

}

第2关:掌握无参有返回值方法的调用


任务描述

定义一个方法,用来计算两门课程成绩的平均值,并返回结果。

相关知识

如果方法不包含参数,但有返回值,我们称为无参带返回值的方法。

例如:下面的代码,定义了一个方法名为 numberPlus ,无参数,但返回值为 int 类型的方法,执行的操作为计算两数之和,并返回结果。

numberPlus() 方法中,返回值类型为 int 类型,因此在方法体中必须使用 return 返回一个整数值。

调用带返回值的方法时需要注意,由于方法执行后会返回一个结果,因此在调用带返回值方法时一般都会接收其返回值并进行处理。如:

回顾与展望

在上一节中你已经掌握了无参数无返回值方法的调用,这一节将要掌握有返回值方法的调用。

一定不可忽视的问题

1、 如果方法的返回类型为 void ,则方法中不能使用 return 返回值!

2、 方法的返回值最多只能有一个,不能返回多个值。

3、 方法返回值的类型必须兼容,例如,如果返回值类型为 int ,则不能返回 String 型值。

编程要求

请根据任务描述 ,在编辑器Begin-End中定义一个名为 calcAvg 的方法,用来计算两门课程成绩的平均值,并返回结果。

测试说明

程序会对你编写的代码进行测试:

需要你的程序输出:

平均成绩为:87.75


开始你的任务吧,祝你成功!

代码:

package setp7;

public class HelloWorld {

    public static void main(String[] args) {

        /********** Begin **********/

        // 调用calcAvg()方法,并将返回值保存在变量avg中

        double avg = calcAvg();

        /********** End **********/

        System.out.println("平均成绩为:" + avg);

    }

    // 定义一个返回值为double类型的方法

    /********** Begin **********/

    public  static double  calcAvg() {

        double java = 92.5;

        double php = 83.0;

        double avg = (java + php) / 2; // 计算平均值

return avg;

        // 使用return返回值


 

    /********** End **********/

    }

}

第3关: 掌握有参数无返回值方法的调用


任务描述

本关任务:编写带参方法计算两门课程考试成绩的平均分。

相关知识

有时方法的执行需要依赖于某些条件,就像生活中我们做一件事情时,也许需要前提条件,而方法的参数就相当于前提条件。

我们先来看一个带参数,但没有返回值的方法:

 
  1. /*
  2. *带参无返回值
  3. */
  4. public static void show(String name){
  5. System.out.println(name);
  6. }

上面的代码定义了一个 show() 方法,带有一个参数 name ,实现输出欢迎消息。

调用带参方法与调用无参方法的语法类似,但在调用时必须传入实际的参数值。

例如:

 
  1. public static void main(String[] args) {
  2. //调用方法,得到结果
  3. show("我是Java爱好者");
  4. }

运行后控制台打印结果为:

我是Java爱好者

很多时候,我们把定义方法时的参数称为形参,目的是用来定义方法需要传入的参数的个数和类型;把调用方法时的参数称为实参,是传递给方法真正被处理的值。

一定不可忽视的问题:

1、 调用带参方法时,必须保证实参的数量、类型、顺序与形参一一对应。

2、 调用方法时,实参不需要指定数据类型,如。

 
  1. public static void main(String[] args) {
  2. //调用方法,得到结果
  3. show("我是Java爱好者");
  4. }

3、 方法的参数可以是基本数据类型,如 intdouble 等,也可以是引用数据类型,如 String数组等。

4、 当方法参数有多个时,多个参数间以逗号分隔。

 
  1. public static int test(int number1 , int number2){
  2. System.out.println("内部逻辑");
  3. }

编程要求

根据提示,在右侧编辑器Begin-End处补充代码,编写并调用求平均值的方法,传入两门成绩,求出平均值。

测试说明

测试输入:90,80
预期输出:
平均分:85

测试输入:100,90
预期输出:
平均分:95


开始你的任务吧,祝你成功!

代码:

package setp9;

import java.util.Scanner;

public class HelloWorld {

    public static void main(String[] args) {

      HelloWorld hello=new HelloWorld();

    Scanner sc = new Scanner(System.in);

    int score1 = sc.nextInt(); //第一门成绩

    int score2 = sc.nextInt(); //第二门成绩

    

    /********** Begin **********/

    hello.calcAvg(score1,score2);

        // 调用方法,传入两门课程的成绩

    /********** End **********/

    }

    /*

     * 功能:计算两门课程考试成绩的平均分并输出平均分

     * 定义一个包含两个参数的方法,用来传入两门课程的成绩

     */

  /********** Begin **********/

public static void calcAvg(int score1,int score2){

  int avg=(score1+score2)/2;

  System.out.println("平均分:"+avg);

}

  /********** End **********/

}

第4关:掌握有参数有返回值方法的调用


任务描述

本关任务:定义一个有参数有返回值方法(函数)并调用。

相关知识

要完成本关任务你需要掌握:1.怎么定义有参数有返回值的方法,2.怎么调用。

怎么定义有参数有返回值的方法

如果方法既包含参数,又带有返回值,我们称为带参带返回值的方法。

例如:下面的代码,定义了一个 welcome 方法,带有一个参数 name ,方法执行后返回一个 String 类型的结果。

怎么调用

调用带参带返回值的方法:

运行结果为: 欢迎你张三丰

编程要求

Begin-End区域创建一个 名为getMax的方法,以两个整数作为参数, 返回两个整数变量较大的值,最后在main方法中调用该方法,传入输入的数据。

测试说明

测试输入:5,4
预期输出:
5和4比较,最大值是:5

测试输入:2,3
预期输出:
2和3比较,最大值是:3


开始你的任务吧,祝你成功!

代码:

package step3;

import java.util.Scanner;

public class HelloWorld {

    public static void main(String[] args) {

        HelloWorld hello=new HelloWorld();

        Scanner sc = new Scanner(System.in);

        int i = sc.nextInt();   //获取第一个输入的整数

        int j = sc.nextInt();   //获取第二个输入的整数

        int max=hello.getMax(i,j);

        /********** Begin **********/

        //在这里调用方法获取返回值

        System.out.println( i+"和"+j+"比较,最大值是:"  +  max  );

        /********** End **********/

    }

    /*在这里创建getMax方法,以两个整数作为参数,返回两个整数中较大的值*/

    

    /********** Begin **********/

    public static int getMax(int i,int j){

        if(i>j){

            return i;

        }else{

            return j;

        }

    }

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值