java 方法重载,随机生成数
public class MethodOverload { public static void main(String[] args) { 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; } }
运行结果:
The square of integer 7 is 49 The square of double 7.5 is 56.25
两个方法的方法名虽然相同,但参数类型不同,计算机调用时会根据形参的不同类型调用方法,满足重载关系的两个或多个方法的特征:
(1)方法名相同;
(2)参数类型不同,参数个数不同,或者是参数类型的顺序不同。注:方法的返回值不作为方法重载判断条件。
查看一下JDK中System.out.println()方法,你发现了什么?
println也为方法重载。
编写一个方法使用以上算法生成1000个随机数:
import java.util.Scanner; import java.util.Random; public class Feibo { public static void main(String[] args) { Random rand=new Random(); System.out.print("请输入需要的随机数的个数:"); Scanner input=new Scanner(System.in); int n=0,x=0; n=input.nextInt(); x=rand.nextInt(100)+1;//优先生成一个随机数 for(int i=1;i<=n;i++) { x=((int)Math.pow(7, 5)*x+0)%((int)Math.pow(2,31)-1);//利用上述式子生成随机数 System.out.print(x+" ");//输出 if ( i % 5 == 0 ) System.out.println();//输出格式 } }
}
输入1000;输出结果为: