写点什么

一文带你更了解 Java 中的方法

作者:几分醉意.
  • 2022-10-25
    安徽
  • 本文字数:2332 字

    阅读完需:约 8 分钟

定义方法的格式


修饰符 返回值类型 方法名称(参数类型 参数名称, …){ 方法体 return 返回值}
复制代码


修饰符: 现阶段固定写法,public static 返回值类型: 也就是方法最终产生的数据是什么类型方法名称: 方法的名字,规则和变量一样,小驼峰参数类型: 进入方法的数据是什么类型参数名称: 进入方法的数据对应的变量名称 Ps: 参数如果有多个,使用逗号进行分隔方法体: 方法需要做的事,若干行代码 return: 两个作用,第一停止当前方法,第二将后面的返回值还给调用处(带着返回值回到方法的调用出;谁在调用我,我就把结果还给谁;像下面例子种的赋值调用,sum 在调用它,就把结果还给 sum,所以 sum 就是 7,然后继续下面的+=,就是 107)


注意: return 后面的“返回值”必须和方法名称前面的“返回值类型”保持对应


注意事项:


  1. 方法定义的先后顺序无所谓。

  2. 方法定义不能产生嵌套包含关系。方法定义好了之后,不会执行的。如果要想执行,一定要进行方法的调用。

方法的三种调用格式

1.单独调用: 方法名称(参数);2.打印调用: System.out.println(方法名称(参数));3.赋值调用: 数据类型 变量名称 = 方法名称(参数);


单独调用:只能让方法执行,方法产生的结果,都无法进行使用。打印调用:就是把方法调用写到一个打印输出语句当中,这样方法先执行,执行完后,return 后面的结果将会进行打印显示。赋值调用:不打印,而是把它的结果向左赋值给变量,然后变量在想怎么玩,就怎么玩。


注意:当返回值类型写为 void,这种方法只能够单独使用,不能进行打印调用或者赋值调用。但是可以在方法里面完成打印等操作。void 不需要返回值。只要不是 void,剩下的都有返回值;无返回值的用 void,有返回值的用定义方法的完整格式


完整格式和三种调用方式例子:


/*定义两个int数字相加的方法。三要素:返回值类型: int方法名称:   sum参数列表:   int a,int b */public class abcd {    public static void main(String[] args) {        sum(1,2); //单独调用
System.out.println(sum(1,4)); //打印调用
int number = sum(3,4); //赋值调用 number+=100; System.out.println(number); }
public static int sum(int a, int b) { int result = a + b; return result; }}
复制代码


对比有无返回值的区别:

方法练习

/*题目要求:定义一个方法,用来求出1-100之间所有数字的和值。*/public class Demo02MethodSum{  public static void main(String[]args){    System.outprintln("结果是:"+getSum());/* I 三要素返回值:有返回值,计算结果是一个int数字方法名称:getSum参数列表:数据范围已经确定,是固定的,所以不需要告诉我任何条件,不需要参数*/  public static int getSum(){    int sum = 0;    for (int i = 1; i <= 100; i++) {      sum += i;    }    return sum;  }}
复制代码

方法注意事项

public class 方法注意事项 {    /*使用方法的时候,注意事项:            1.方法应该定义在类当中,但是不能在方法当中再定义方法。不能嵌套。            2.方法定义的前后顺序无所谓。            3.方法定义之后不会执行,如果希望执行,一定要调用:单独调用、打印调用、赋值调用。            4.如果方法有返回值,那么必须写上“return 返回值:",不能没有。            5.return后面的返回值数据,必须和方法的返回值类型,对应起来。            6.对于一个void没有返回值的方法,不能写return后面的返回值,只能写return自己。            7.对于void方法当中最后一行的return可以省略不写。            8、一个方法当中可以有多个return语句,但是必须在不同的逻辑条件下。*/    public static int method1() {        return 10;    }
public static void method2() { //return 10; 错误的写法!方法没有返回值,return后面就不能写返回值。 return; //没有返回值,只是结束方法的执行而已。 }
public static void method3() { System.out.println("AAA"); System.out.println("BBB"); return;//最后一行的return可以省略不写。 } public static int getMax(int x , int y){ if(x > y){ return x; }else { return y; } }}
复制代码

重载方法

public class 重载方法 {    /**     *     * 对于功能类似的方法来说,因为参数列表不一样,     * 却需要记住那么多不同的方法名称,太麻烦。     * 方法的重载(Overload):多个方法的名称一样,但是参数列表不一样。     * 好处:只需要记住唯一一个方法名称,就可以实现类似的多个功能。     *      */    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, 4));//四个参数的方法        //System.out.println(sum(10,20,30,40,50))://找不到任何方法来儿配,所以错误    }
public static int sum(int a, int b) { System.out.println("有2个参数的方法执行!"); return a + b; }
public static int sum(int a, int b, int c) { System.out.println("有3个参数的方法执行!"); return a + b + c; }
public static int sum(int a, int b, int c, int d) { System.out.println("有4个参数的方法执行!"); return a + b + c + d; }}
复制代码


执行结果: 有 2 个参数的方法执行!30 有 3 个参数的方法执行!60 有 4 个参数的方法执行!64

发布于: 刚刚阅读数: 5
用户头像

几分醉意.

关注

还未添加个人签名 2022-10-22 加入

还未添加个人简介

评论

发布
暂无评论
一文带你更了解Java中的方法_Java、_几分醉意._InfoQ写作社区