一、今日学习内容:
01-方法ppt上动手动脑以及课后试验性问题
1、源程序代码
编写一个方法,使用以上算法生成指定数目(比如1000个)的随机整数。
运行结果:
2、看有何特殊之处?
特殊之处:
(1)使用的相同的函数名
(2)函数输入的参数类型不同
(3)函数的返回类型不同
满足以下条件的两个或多个方法构成“重载”关系: (1)方法名相同; (2)参数类型不同,参数个数不同,或者是参数类型的顺序不同。
注意:方法的返回值不作为方法重载的判断条件。
3、阶乘数为什么出现负数?
原因: 由于计算机使用固定的位数来保存数值,因此,能处理的数值大小是有限的,当要处理的数值超过了这一范围时,计算机将会自动截断数值的二进制表示为它所能处理的最多位数,这将导致错误的处理结果。
程序代码:
import java.math.BigInteger; import java.util.Scanner; public class CalculateN { /** * @param args */ public static void main(String[] args) { System.out.print("请输入N:"); Scanner scanner=new Scanner(System.in); int number=scanner.nextInt(); System.out.println(number+"!="+calculateN2(number)); } public static long calculateN(int n) { if(n==1 || n==0) { return 1; } return n*calculateN(n-1); } public static BigInteger calculateN2(int n) { if(n==1 || n==0) { return BigInteger.valueOf(1); } return BigInteger.valueOf(n).multiply(calculateN2((n-1))); } }
正确显示运行结果:
4、查看一下JDK中System.out.println()方法,你发现了什么?
System.out.println()方法中参数表内可输入多种不同类型。