Java中的方法应用

1.1 方法的语法格式

Java中,声明一个方法的具体语法格式如下:

修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,......){

执行语句

......

return 返回值;

}

对于上面的语法格式中具体说明如下:

l 修饰符:方法的修饰符比较多,有对访问权限进行限定的,有静态修饰符static,还有最终修饰符final等,这些修饰符在后面的学习过程中会逐步介绍public

l 返回值类型:用于限定方法返回值的数据类型void

l 参数类型:用于限定调用方法时传入参数的数据类型

l 参数名:是一个变量,用于接收调用方法时传入的数据

l return关键字:用于结束方法以及返回方法指定类型的值

l 返回值:被return语句返回的值,该值会返回给调用者

 

需要特别注意的是,方法中的“参数类型 参数名1,参数类型 参数名2”被称作参数列表,它用于描述方法在被调用时需要接收的参数,如果方法不需要接收任何参数,则参数列表为空,即()内不写任何内容。方法的返回值必须为方法声明的返回值类型,如果方法中没有返回值,返回值类型要声明为void,此时,方法中return语句可以省略。

 

public class MethodDemo01 {
    public static void main(String[] args) {
        int area = getArea(3, 5); // 调用 getArea方法
        System.out.println(" The area is " + area);
    }

    // 下面定义了一个求矩形面积的方法,接收两个参数,其中x为高,y为宽
    public static int getArea(int x, int y) {
        int temp = x * y; // 使用变量temp记住运算结果
        return temp; // 将变量temp的值返回
    }
}

运行结果

在上述代码中,定义了一个getArea()方法用于求矩形的面积,参数x和y分别用于接收调用方法时传入的高和宽,return语句用于返回计算所得的面积。在main()方法中通过调用getArea()方法,获得矩形的面积,并将结果打印。

1.1 方法调用图解

接下来通过一个图例演示getArea()方法的整个调用过程,如下图所示。

 

                                                                                                                   图1-1 getArea()方法的调用过程

从上图中可以看出,在程序运行期间,参数x和y相当于在内存中定义的两个变量。当调用getArea()方法时,传入的参数3和5分别赋值给变量x和y,并将x*y的结果通过return语句返回,整个方法的调用过程结束,变量x和y被释放。

1.2 方法定义练习

分别定义如下方法:

定义无返回值无参数方法,如打印3行,每行3*号的矩形

定义有返回值无参数方法,如键盘录入得到一个整数

定义无返回值有参数方法,如打印指定M行,每行N*号的矩形

定义有返回值有参数方法,如求三个数的平均值 

 1、无返回值无参数方法,如打印3行,每行3个*号的矩形

public static void printRect(){
        //打印3行星
        for (int i=0; i<3; i++) {
            //System.out.println("***"); 相当于是打印3颗星,换行
            //每行打印3颗星
            for (int j=0; j<3; j++) {
                System.out.print("*");  // ***
            }
            System.out.println();
        }
    }

    2、有返回值无参数方法,如键盘录入得到一个整数

public static int getNumber(){
        Scanner sc = new Scanner(System.in);
        int number = sc.nextInt();
        return number;
    }

3、 无返回值有参数方法,如打印指定M行,每行N个*号的矩形

public static void printRect2(int m, int n){
        //打印M行星
        for (int i=0; i<m; i++) {
            //每行中打印N颗星
            for (int j=0; j<n; j++) {
                System.out.print("*");  
            }
            System.out.println();
        }
    }

4、 有返回值有参数方法,如求三个数的平均值

public static double getAvg(double a, double b, double c) {
        double result = (a+b+c)/3;
        return result;
    }

 

 

 

posted @ 2018-09-15 16:25  时间绝境  阅读(232)  评论(0编辑  收藏  举报