本节主要内容:

1:方法练习2

1.1:根据键盘录入数据输出对应的乘法表

2:方法重载概述和基本使用

3:方法重载练习比较数据是否相等

4:传送门。在传送门中,凯哥会把最近几篇文章放在下面,方便大家阅读

一:方法练习2

需求:根据键盘录入数据输出对应的乘法表

1:分析 99乘法口诀表 (自己回想下)

2:返回类型。void(打印到控制台)

3:参数列表 int a

代码截图:


从零学java笔录-第21篇 方法(函数3之重载)_方法重载

代码:

/**

*根据用户输入的值打印出对应的99乘法表

* @param a

*/

public static void parint99(int a){

for (int i = 1; i <a; i++) {

for (int j = 1; j <=i; j++) {

System.out.print(j+" * "+ i +"="+(i*j) +"\t");

}

System.out.println;

}

}

输出结果:


从零学java笔录-第21篇 方法(函数3之重载)_数据_02

二:方法重载概述和基本使用

1:重载定义

方法名称相同,方法参数列表不同,与返回值类型无关的。

1.1理解:

比如我们add方法只能求两个数相加,那么现在想求三个数之和怎么办?

在写个方法叫做add3,4个数求和方法名叫add4吗?

完全可以不用这样,因为我们可以使用重载来完成这些。

既然方法的功能都是求和,那么方法名字都叫做add,只是参数列表不同。

俩个数的求和,参数列表就俩个

三个数的求和,列表参数就是三个。

代码演示:


从零学java笔录-第21篇 方法(函数3之重载)_数据_03

具体代码:

/**

*重载的定义:

*方法名称相同,参数列表不同,与方法返回类型无关

*

*/

public static void main(String args) {

int a = 1;

int b = 8;

int c = 4;

int sumab = add(a,b);

System.out.println("a + b = "+ sumab);

int sumabc = add(a,b ,c );

System.out.println("a + b +c = "+ sumabc);

}

/**

*求三个数之和

* @param a

* @param b

* @param c

* @return返回相加之和

*/

private static int add(int a, int b, int c) {

return a+b+c;

}

/**

*求两个数之和

* @param a

* @param b

* @return返回相加之和

*/

private static int add(int a, int b) {

return a+b;

}

运行结果:



2:重载分类

1:参数列表中个数不同(如上add方法)

2:参数类型不同

如下:

现在需求:求两个小数的和


从零学java笔录-第21篇 方法(函数3之重载)_java_04

运行结果:



比较两个整数之和 &两个小数之和的方法


从零学java笔录-第21篇 方法(函数3之重载)_java_05

2.2:参数类型不同特殊顺序不同


从零学java笔录-第21篇 方法(函数3之重载)_java_06

三:方法重载练习

需求:比较两个数据是否相等

参数类型分为两个in他类型,两个doubl类型,并在main方法中进行测试

MAIN函数:


从零学java笔录-第21篇 方法(函数3之重载)_方法重载_07

重载的两个函数:


从零学java笔录-第21篇 方法(函数3之重载)_方法重载_08

运行的结果:



完整代码:

public class OverloadTest {

public static void main(String args) {

int a = 5;

int b = 4;

boolean isEquesInt = isEquest(a,b);

System.out.println("两个int "+a +" 、 "+b +"是否相等"+isEquesInt );

double d1=1.5;

double d2=3.2;

boolean isEquesDouble = isEquest(d1,d2);

System.out.println("两个double "+d1 +" 、 "+d2 +"是否相等"+isEquesDouble );

}

/**

*两个double比较是否相等

* @param d1

* @param d2

* @return

*/

public static boolean isEquest(double d1, double d2) {

return d1==d2;

}

/**

*两个int比较是否相等

* @param a

* @param b

* @return

*/

public static boolean isEquest(int a, int b) {

return a==b;

}

}

欢迎关注凯哥公众号:凯哥Java