java课程作业--动手动脑
随机数:
1)编写一个方法,使用以下算法生成指定数目(比如1000个)的随机整数。
Modulus=231-1=int.MaxValue
Multiplier=75=16807
C=0
当显示过231-2个数之后,才可能重复。
程序:
import java.util.Scanner;
public class Random {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.print("输入你要获取的个数:");
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();//获取的随机数的个数
for(int i = 0;i < n;i++)//for循环
System.out.println((int)(Math.random()*1000));//输出获取的1-10000的随机数
}
}
方法重载:
2)请看以下代码,你发现了有什么特殊之处吗?
public class MethodOverload {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("The square of integer 7 is " + square(7));
System.out.println("\nThe square of double 7.5 is " + square(7.5));
}
public static int square(int x) {
return x * x;
}
public static double square(double y) {
return y * y;
}
}
截图:
一下两个方法构成重载关系:
【(1)方法名相同;
(2)参数类型不同,参数个数不同,或者是参数类型的顺序不同。】
程序中7是int型,square(7)调用的是int square(int),得到int型结果
程序中7.5是double型,square(7.5)调用的是double square(double),从而得到double型结果
可知该程序是方法的重载,第一个进行int型的计算,而第二个进行double型的运算。