Java 重复生成从0到30的随机数,直到总数达到200或更多
该随机程序应:Java 重复生成从0到30的随机数,直到总数达到200或更多,java,arrays,Java,Arrays,该随机程序应: 重复生成从0到30的随机数,直到总数达到200或更多 将每个随机值放入ArrayList编号中,并在一行中打印这些值 设置一个计数器数组事件跟踪每个可能性的事件通过检查数字填充数组 在两列中打印可能的值及其引用 确定并打印句子中最常见的数字 我不确定我是否做得正确,我也不知道如何获得关于如何打印常见事件的引用…请帮助我。。我的代码如下: import java.util.ArrayList; public class Random { public static void m
- 重复生成从0到30的随机数,直到总数达到200或更多
- 将每个随机值放入ArrayList编号中,并在一行中打印这些值
- 设置一个计数器数组事件跟踪每个可能性的事件通过检查数字填充数组
- 在两列中打印可能的值及其引用李>
- 确定并打印句子中最常见的数字李>
import java.util.ArrayList;
public class Random {
public static void main(String[] args) {
// TODO Auto-generated method stub
ArrayList<Integer> numbers = new ArrayList<Integer>();
int counter = 0, num;
int total = 0;
do{
num=(int) (Math.random()*30);
System.out.print(num +" ");
total+=num;
numbers.add(num);
for (int i=0;i<numbers.size();i++){
if(i==num){
counter++;
}
}
}while (total<=200);
System.out.println();
System.out.println(" Numbers " +" "+ "Occurences");
System.out.println(" "+ num + " "+ counter);
}
}
import java.util.ArrayList;
公共类随机{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
ArrayList编号=新的ArrayList();
int计数器=0,num;
int-total=0;
做{
num=(int)(Math.random()*30);
系统输出打印(num+“”);
总数+=num;
数字。添加(num);
对于(int i=0;i首先,在ArrayList
具体类型上使用List
界面。其次,在尝试计算出现次数之前,生成整个列表
List<Integer> numbers = new ArrayList<>();
int total = 0;
do {
int num = (int) (Math.random() * 30);
System.out.print(num + " ");
total += num;
numbers.add(num);
} while (total <= 200);
System.out.println();
System.out.println("Numbers \t Occurences");
for (int num : numbers) {
System.out.printf("%5d \t %5d%n", num, numbers.stream()
.filter(x -> x.equals(num)).count());
}
List number=new ArrayList();
int-total=0;
做{
int num=(int)(Math.random()*30);
系统输出打印(num+“”);
总数+=num;
数字。添加(num);
}而(total x.equals(num)).count();
}
您需要确定完成最后一点的最大计数。我发布了13行代码,而您发布了18行代码。我的代码更简单。您当然可以用另一个循环替换stream()
和filter()
,但这取决于您。我指的是使用for循环和if-else语句的另一种方法。