首页 > 其他 > 详细

方法的基本知识

时间:2021-04-29 22:28:32      阅读:22      评论:0      收藏:0      [点我收藏+]

方法的基本知识

方法有无参数的区别

有参数:

小括号当中有内容,当一个方法需要一些数据条件,才能完成任务的时候,就是有参数。

例如:两个数字相加,必须知道两个数字各自是多少才能相加。

无参数:

小括号当中留空。一个方法不需要任何数据条件,自己就能独立完成任务,就是无参数。

例如:定义一个方法,打印固定10次Hello World。

public class Demo01{
    public static void main(String[] args) {
        method1(a:10,b:20)
        System.out.println("=======")
            method2;
    }
    /*两个数字相乘,必须知道两个数字各自是多少,否则无法进行计算
    有参数*/
    public static void method1(int a, int b) {
        int result = a*b;
        System.out.println("结果是:"+result);
    }
    //无参数:例如打印输出固定10次文本字符串
    public static void method2() {
        for (int i = 0; i < 10; i++) {
            System.out.println("Hello,World"+i);
        }
    }
}

有无返回值

对于有返回值的方法,可以使用单独调用、打印调用或赋值调用。

对于无返回值的方法,只能使用单独调用,不能使用打印调用或赋值调用。

public static void main(String[] args) {
    sum1(a:10,b:20);//单独调用,没有使用返回值
    int num = sum1(a:100,b:200);//赋值调用
    System.out.println(sum1(a:30,b:20));//打印调用
    ===========================================================
    sum2(a:50,b:60);//单独调用
    //错误写法
    /*int num2 = sum2(a:80,b:90);
    System.out.println(num2);
    System.out.println(sum2(a:80,b:90));*/
}
public static int sum1(int a,int b){
    int result = a + b;
    return result;//有返回值,计算结果返回给调用处
}
//sum2没有返回值,只能进行单独调用
//sum2结果只在sum2方法中,main方法得不到sum2中的结果
public static void sum2(int a,int b){
    int result = a + b;
    System.out.println(result);//无返回值,计算结果不返回给调用处
}

布尔类型方法

public class bool {
    public static void main(String[] args) {
        System.out.println(isSame(55,55));
    }
    /*三要素
    返回值类型:boolea
    方法名称:isSame
    参数:int a, int b;
     */
    public static boolean isSame(int a, int b){
        boolean same;
        //三种写法都正确
       /* if (a==b){
            same = true;
        }else{
            same = false;
        }*/
        //same = a == b ? true : false;
        same = a == b;
        return same;// 还可以直接写成return a == b;
    }
}

使用方法的注意事项:

1.方法应该定义在类中,但是不能在方法中在定义方法。不能嵌套。

2.方法定义的前后顺序无所谓。

3.方法定义之后不会执行,需要调用。单独调用、打印调用、赋值调用。

4.如果方法有返回值,那么必须写上return返回值。

5.return后面的返回值数据必须和方法的返回值类型对应起来。

public static int method(){
    return 10;//返回值为int类型,与方法类型对应
}

6.对于一个void没有返回值类型的方法,不能写return后面的返回值,只能写return;。

7.对于void方法中最后一行return可以省略。

public static void method(){
    return;//没有返回值,只是结束方法的执行,可以省略
}

8.一个方法中可以有多个return语句,但是必须保证同时只有一个return语句会被执行,两个return不能连写。

public static int method(int a,int b){
    int max;
    if (a>b){
        max=a;
    }else{
        max=b;
    }
    return max;
}
public static int method(int a,int b){
    if (a>b) {
        return a;
    }else{
        return b;
    }
}//必须保证有一个return语句被执行

方法的重载(overload)

对功能类似的方法来说,因为参数列表不一样,方法名称过多,不利于记忆。

方法重载(Overload):多个方法的名称一样,但是参数列表不一样。

好处:只需要记住一个方法名称,就可以实现多个类似功能。

public static void main(String[] args) {
        System.out.println(sumTwo(10,20));
        System.out.println(sumThree(10,20,30));
        System.out.println(sumfour(10,20,30,40));
    }
    public static int sumTwo(int a,int b){
        return a + b;
    }
    public static int sumThree(int a,int b,int c){
        return a + b +c;
    }
    public static int sumfour(int a,int b,int c,int d){
        return a + b + c + d;
    }

等于:

public static void main(String[] args) {
        System.out.println(sum(10,20));
        System.out.println(sum(10,20,30));
        System.out.println(sum(10,20,30,40));
    }
    public static int sum(int a,int b){
        return a + b;
    }
    public static int sum(int a,int b,int c){
        return a + b + c;
    }
    public static int sum(int a,int b,int c,int d){
        return a + b + c + d;
    }

方法重载与下列因素相关:

1.参数个数不同

2.参数类型不同

public static int sum(double a,double b){
    return (int)(a+b);
}
public static int sum(int a,int b,int c){
    return a + b +c;
    }
public static int sum(int a,int b,int c,int d){
    return a + b + c + d;
}

3.参数的多类型顺序不同

public static int sum(int a,double b){
    return (int)(a+b);
}
public static int sum(double a,int b){
    return (int)(a+b);
}
public static int sum(int a,int b,int c){
    return a + b + c;
}
public static int sum(int a,int b,int c,int d){
    return a + b + c + d;
}

方法重载与下列关系无关:

1.与参数名称无关

错误写法
public static int sum (int x,int y){
    return x + y;
}
public static int sum(int a,int b,int c){
    return a + b + c;
}
public static int sum(int a,int b,int c,int d){
    return a + b + c + d;
}

2.与方法的返回值类型无关

错误写法
public static double sum(int a,int b){
    return a + b + 0.0;
}
public static int sum(int a,int b){
    return a + b;
}
在调用输出语句时,println方法其实就是进行了多种数据类型的重载形式。

该笔记摘抄自点击跳转到视频教程

方法的基本知识

原文:https://www.cnblogs.com/trboss/p/14719655.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!