java 中参数以及方法

2019-03-27  本文已影响0人  joytom

一、类的实例化以及方法的调用

package com.haha;

public class test {
    public static void main(String[] args) {
        test custom=new test();
        custom.eat();
    }
    
    public void eat() {
        System.out.println("哈哈,我正在吃饭!");
    }
}

image.png

二、java中无参无返回值的用法

public class HelloWorld {
    
    public static void main(String[] args) {
        // 创建对象,对象名为hello
        HelloWorld hello = new HelloWorld();
        
        // 调用方法
        hello.showMyLove();
    }

    /*
     * 定义无参无返回值的方法
     */
    public  void     showMyLove() {
        System.out.println("我爱慕课网!");
    }
}
image.png

三、java中无参有返回值的使用

public class HelloWorld {
    
    public static void main(String[] args) {
        
        // 创建名为hello的对象
        HelloWorld hello = new HelloWorld();
        
        // 调用hello对象的calcAvg()方法,并将返回值保存在变量avg中
        double avg = hello.calcAvg();
        
        System.out.println("平均成绩为:" + avg);
    }

    // 定义一个返回值为double类型的方法
    public   double       calcAvg() {
        
        double java = 92.5;
        double php = 83.0;
        double avg = (java + php) / 2; // 计算平均值
        
        // 使用return返回值
        return avg;
        
    }
}
image.png

需要注意的错误:
1、 如果方法的返回类型为 void ,则方法中不能使用 return 返回值!


image.png

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


image.png
3、 方法返回值的类型必须兼容,例如,如果返回值类型为 int ,则不能返回 String 型值
image.png
四、输出学生年龄中的最大值
public class HelloWorld {
    
    //完成 main 方法
    public static void main(String[] args) {
        
        // 创建对象,对象名为hello
        HelloWorld hello = new HelloWorld(); 
        
        // 调用方法并将返回值保存在变量中
        int maxScore=hello.getMaxAge();
        
        // 输出最大年龄
        System.out.println("最大年龄为:" + maxScore); 
    }

    /*
     * 功能:输出学生年龄的最大值 
     * 定义一个无参的方法,返回值为年龄的最大值
     * 参考步骤:
     * 1、定义一个整形数组 ages ,保存学生年龄,数组元素依次为 18 ,23 ,21 ,19 ,25 ,29 ,17
     * 2、定义一个整形变量 max ,保存学生最大年龄,初始时假定数组中的第一个元素为最大值
     * 3、使用 for 循环遍历数组中的元素,并与假定的最大值比较,如果比假定的最大值要大,则替换当前的最大值
     * 4、使用 return 返回最大值
     */
    public int getMaxAge() {
    
        int[] age=new int[]{18,23,21,19,25,29,17};
    
        int max=0;
        
        for(int i=0;i<age.length;i++){
            if(age[i]>max)
            {
                max=age[i];
            }
            
        }
        return max;
    
    
    }
}
image.png

五、java中有参无返回值

public class HelloWorld {
    public static void main(String[] args) {
        
        // 创建对象,对象名为hello
        HelloWorld hello = new HelloWorld();
        
        // 调用方法,传入两门课程的成绩
        hello.calcAvg(94, 81);
    }

    /*
     * 功能:计算两门课程考试成绩的平均分并输出平均分
     * 定义一个包含两个参数的方法,用来传入两门课程的成绩
     */
    public void calcAvg(float score1,float score2)
    {
        float avg=(score1+score2)/2;
        System.out.println(avg);
    }
}
image.png

六、Java 中带参带返回值方法的使用

import java.util.Arrays;

public class HelloWorld {
    public static void main(String[] args) {
        HelloWorld hello = new HelloWorld();
        int[] scores={79,52,98,81};
        
        //调用方法,传入成绩数组,并获取成绩的个数
        int count=hello.sort(scores);
        
        System.out.println("共有"+count+"个成绩信息!");
    }
    
    /*
     * 功能:将考试成绩排序并输出,返回成绩的个数
     * 定义一个包含整型数组参数的方法,传入成绩数组
     * 使用Arrays类对成绩数组进行排序并输出
     * 方法执行后返回数组中元素的个数
     */
    public int sort( int scores[] ){  //这里[]不能少哦!
        Arrays.sort(scores);
        System.out.println(Arrays.toString(scores));
        
        //返回数组中元素的个数
        return scores.length;
    }
}
image.png

七、方法的重载
问: 如何区分调用的是哪个重载方法呢?

答: 当调用被重载的方法时, Java 会根据参数的个数和类型来判断应该调用哪个重载方法,参数完全匹配的方法将被执行。如:


image.png

判断方法重载的依据:

1、 必须是在同一个类中

2、 方法名相同

3、 方法参数的个数、顺序或类型不同

4、 与方法的修饰符或返回值没有关系

代码实例

public class HelloWorld {
    public static void main(String[] args) {

        // 创建对象
        HelloWorld hello = new HelloWorld();

        // 调用无参的方法
        hello.print();

        // 调用带有一个字符串参数的方法
        hello.print("小王");

        // 调用带有一个整型参数的方法
        hello.print("20");
    }

    public void print() {
        System.out.println("无参的print方法");
    }

    public void print(String name) {
        System.out.println("带有一个字符串参数的print方法,参数值为:" + name);
    }

    public void print(int age) {
        System.out.println("带有一个整型参数的print方法,参数值为:" + age);
    }
}
image.png

八、编程练习

//导入java.util.Arrays;
import java.util.Arrays;


public class HelloWorld {
    public static void main(String[] args) {
        
         // 创建对象,对象名为hello
        HelloWorld hello = new HelloWorld();
        
        // 调用方法并将返回值保存在变量中
        int[] nums = hello.getArray(8);
        
        // 将数组转换为字符串并输出
        System.out.println(Arrays.toString(nums)); 
    }

    /*
     * 功能:创建指定长度的int型数组,并生成100以内随机数为数组中的每个元素赋值
     * 定义一个带参带返回值的方法,通过参数传入数组的长度,返回赋值后的数组
     */
    public int[] getArray(int length) {
        // 定义指定长度的整型数组
        int[] nums = new int[length];
        
        // 循环遍历数组赋值
        for (int i=0;i<nums.length;i++) {
            
            // 产生一个100以内w的随机数,并赋值给数组的每个成员
           nums[i]=(int)(Math.random()*100);
        
        }
        return nums; // 返回赋值后的数组
    }
}
上一篇下一篇

猜你喜欢

热点阅读