调用类java.lang.Math的成员方法“public static double random()”运算下面表述式10000次,(int)(Math.random()*20+0.5)统计其中生成数量的整数0,1,2,...,20的个数分别是多少,并输出统计结果
时间: 2024-03-14 18:47:43 浏览: 19
好的,我可以帮你实现这个功能。以下是Java代码示例:
```java
public class RandomTest {
public static void main(String[] args) {
int[] count = new int[21];
for (int i = 0; i < 10000; i++) {
int num = (int) (Math.random() * 20 + 0.5);
count[num]++;
}
for (int i = 0; i < count.length; i++) {
System.out.println(i + "出现的次数:" + count[i]);
}
}
}
```
代码解释:
1. 首先定义一个长度为21的整型数组`count`,用于统计每个整数出现的次数,数组下标表示整数值。
2. 然后进行10000次循环,每次生成一个介于0和20之间的随机数,并将相应下标的计数器加1。
3. 最后遍历计数器数组,输出每个整数出现的次数。
希望这个回答对你有所帮助!
相关问题
调用类java.lang.Math的成员方法“publicsstatic double random0”生成10个互不相同的从“”到“z”字母,并对这些字母按照从小到大的顺序排序
以下是代码实现:
```java
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
char[] letters = new char[10];
int index = 0;
while (index < 10) {
char c = (char) (Math.random() * 26 + 'a');
if (Arrays.binarySearch(letters, 0, index, c) < 0) {
letters[index++] = c;
}
}
Arrays.sort(letters);
for (char c : letters) {
System.out.print(c + " ");
}
}
}
```
这段代码利用了java.lang.Math类的random方法产生了10个从"a"到"z"的随机字母,并且通过Arrays类的sort方法进行排序。
远程调用出现java.util.concurrent.CompletionException: java.lang.IllegalArgumentException
远程调用出现`java.util.concurrent.CompletionException: java.lang.IllegalArgumentException`的原因可能是TLS版本不兼容。在引用和引用中都提到了`java.lang.IllegalArgumentException: TLSv1.1`,这可能是导致异常的原因之一。
解决这个问题的方法是将TLS版本升级到兼容的版本。可以尝试将TLS版本升级到TLSv1.2或更高版本。具体的操作步骤可能因使用的框架或工具而有所不同,以下是一个示例代码片段,演示如何使用Java的HttpsURLConnection设置TLS版本为TLSv1.2:
```java
import javax.net.ssl.HttpsURLConnection;
import java.io.IOException;
import java.net.URL;
public class Main {
public static void main(String[] args) throws IOException {
URL url = new URL("https://example.com");
HttpsURLConnection connection = (HttpsURLConnection) url.openConnection(); connection.setSSLSocketFactory(new TLSSocketFactory());
// 其他设置和请求代码...
}
}
```
请注意,上述示例中的`TLSSocketFactory`是一个自定义的类,用于设置TLS版本为TLSv1.2。你可以根据自己的需求实现一个类似的工具类。