方法的重载
Posted dododo70
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了方法的重载相关的知识,希望对你有一定的参考价值。
方法重载:在同一个类中允许同时存在一个以上的同名方法,只要这些方法的参数个数或者参数类型不同即可。
public class OverLoadTest { public static int add(int a, int b){ return a + b; } public static double add(double a, double b){ return a + b; } public static int add(int a){ return a; } public static int add(int a, double b){ return 1; } public static void main(String args[]){ System.out.println("add(1,2)---" + add(1,2)); System.out.println("add(1.2,2.4)---" + add(1.2,2.4)); System.out.println("add(5)---" + add(5)); System.out.println("add(5,5.3)---" + add(5,5.3)); } } /*----------------------------------------------------- F:Javacode>java OverLoadTest add(1,2)---3 add(1.2,2.4)---3.5999999999999996 add(5)---5 add(5,5.3)---1 F:Javacode>*/
定义不定长参数的方法:
返回值 方法名(参数数据类型···参数名称)
例: int add ( int... a)---参数a实际上是一个数组,编译器会将(int... a)看作--(int a[])
public class OverLoadTest { public static int add(int a, int b){ return a + b; } public static double add(double a, double b){ return a + b; } public static int add(int a){ return a; } public static int add(int a, double b){ return 1; } public static int add(double a, int b){ return 1; } public static int add(int... a){ //定义不定长参数 int s = 0; for(int x=0; x<a.length; x++){ s += x; } return s; } public static void main(String args[]){ System.out.println("add(1,2)---" + add(1,2)); System.out.println("add(1.2,2.4)---" + add(1.2,2.4)); System.out.println("add(5)---" + add(5)); System.out.println("add(5,5.3)---" + add(5,5.3)); System.out.println("add(1,2,3,4,5,5,6)---" + add(1,2,3,4,5,5,6)); } } /*----------------------------------------------------- F:Javacode>java OverLoadTest add(1,2)---3 add(1.2,2.4)---3.5999999999999996 add(5)---5 add(5,5.3)---1 add(1,2,3,4,5,5,6)---21 F:Javacode>*/
以上是关于方法的重载的主要内容,如果未能解决你的问题,请参考以下文章