9月22日

星期一的作业:

import java.util.HashSet;
import java.util.Random;
import java.util.Set;

public class RandomNumberGenerator {
private static final int MODULUS = Integer.MAX_VALUE;
private static final int MULTIPLIER = 16807;
private static final int C = 0;

public static Set<Integer> generateRandomNumbers(int count) {
Set<Integer> randomNumbers = new HashSet<>();
int seed = 1;

for (int i = 0; i < count; i++) {
seed = (MULTIPLIER * seed + C) % MODULUS;
randomNumbers.add(seed);
}

return randomNumbers;
}

public static void main(String[] args) {
int count = 1000;
Set<Integer> randomNumbers = generateRandomNumbers(count);

System.out.println("Generated random numbers:");
for (int number : randomNumbers) {
System.out.println(number);
}
}
}

第一个动手动脑,使用了ppt上面的算法生成了1000个随机数。

 

 

 

// MethodOverload.java // Using overloaded methods 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; } }

 

第二个动手动脑

这段代码展示了方法的重载(Method Overloading)的特性。方法的重载是指在同一个类中定义多个同名但参数列表不同的方法。

在这个示例中,有两个名为square的方法,一个接受一个整数参数,另一个接受一个双精度浮点数参数。这两个方法具有相同的方法名但参数列表不同,这就是方法重载的体现。

当我们调用square方法时,编译器会根据传入的参数类型来确定要调用的具体方法。如果传入一个整数参数,编译器会选择调用接受整数参数的square方法;如果传入一个双精度浮点数参数,编译器会选择调用接受双精度浮点数参数的square方法。

这种方法重载的特性可以提高代码的可读性和灵活性,使得我们可以使用相同的方法名来处理不同类型的输入数据。

 
posted @ 2023-09-22 16:43  序章0  阅读(19)  评论(0)    收藏  举报