
正文
人员随机抽取java代码 随机抽取人员程序
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java 假设一个班级共35人, 学号从1~35, 请编写程序进行随机学号抽取, 每个学号不
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class SelectNo {
public static void main(String[] args) {
//将1-35号码放入List集合
ListString list = new ArrayListString();
for (int i = 1; i 36; i++) {
list.add(""+i);
}
//新建一个List集合用来存放抽出来的号码
ListString newList = new ArrayListString();
//随机抽取list集合中的一个元素,抽出后删除
Random rd = new Random();
int count = list.size();//集合中剩余号码
while (count 0) {
int index = rd.nextInt(count);//抽出的号码的位置
//放入新的集合
newList.add(list.get(index));
//删除原有集合的元素
list.remove(index);
count--;//原有集合少了一个
}
//输出号码
for (int i = 0; i newList.size(); i++) {
System.out.print(newList.get(i)+"\t");
//每五个换行
if(i%5 == 4){
System.out.println("");
}
}
}
}
相关问答
Q1: 怎样用java随机抽取每一组的组员
int[] arr=new int[40];
int temp;
do{
temp=(int)Math.random()*100;//数组存储人员随机抽取java代码的数据量必须小于100
}while(temparr.length;);
//已经获得一个随机数temp人员随机抽取java代码,对应数组人员随机抽取java代码的一个下标,接下来就可以取值人员随机抽取java代码了
int num=arr[temp];纯手打,代码可能有点小错误,请谅解人员随机抽取java代码!
Q2: Java随机抽取人名完整代码是什么?
public class test {\x0d\x0a public static void main(String[] args) {\x0d\x0a //定义人名数组\x0d\x0a String [] name = {"张三","李四","王五","八神庵","不知火舞","大蛇","景天","唐雪见","李逍遥","赵灵儿"};\x0d\x0a//随机生成数组下标、\x0d\x0a int num = (int)(Math.random() * 1000);\x0d\x0a//对生成的随机数进行判断,如果小于数组下标,就跳出循环\x0d\x0awhile (numname.length-1) {\x0d\x0a if (num
回答于 2022-11-16
Q3: Java代码实现抽奖:从班级的学号中抽出一个一等奖,两个二等奖,三个三等奖
抽取问题, 重点是 同一个学号不能重复被抽取.
解决办法很多,
比如数组可以使用下标来标记,号码是否被使用,使用人员随机抽取java代码了就继续下一次抽取
也可以使用集合来抽取,把集合顺序打乱,然后随便抽几个就可以了
参考代码:数组法
import java.util.Random;
public class Test {
public static void main(String[] args) {
int stuNums=30;
int[] nums=new int[stuNums];//存储学号人员随机抽取java代码的数组
boolean[] flags=new boolean[stuNums];//标记,用于标记对应下标人员随机抽取java代码的学号是否已经被抽取过了
for (int i = 0; i stuNums; i++) {
nums[i]=i+1;//给学号赋值
}
Random r=new Random();
while(true){
int index = r.nextInt(stuNums);
if(!flags[index]){
System.out.println("A等:"+nums[index]);
flags[index]=true; //标记已经被使用过了
break;
}
}
for (int i = 0; i 2; i++) {
int index = r.nextInt(stuNums);
if(!flags[index]){
System.out.println("B等:"+nums[index]);
flags[index]=true;
}else{
i--;//如果已经被抽取过了 ,那么i建议,再次循环
}
}
for (int i = 0; i 3; i++) {
int index = r.nextInt(stuNums);
if(!flags[index]){
System.out.println("c等:"+nums[index]);
flags[index]=true;
}else{
i--;
}
}
}
}
集合法
import java.util.ArrayList;
import java.util.Collections;
public class Test2 {
public static void main(String[] args) {
int stuNums=20;
ArrayListInteger list=new ArrayListInteger();
for (int i = 0; i stuNums; i++) {
list.add(i+1);
}
System.out.println("有序"+list);
Collections.shuffle(list);//打乱顺序
System.out.println("乱序"+list);
System.out.println("A等"+list.get(0));
System.out.println("B等"+list.get(1));
System.out.println("B等"+list.get(2));
System.out.println("C等"+list.get(3));
System.out.println("C等"+list.get(4));
System.out.println("C等"+list.get(5));
}
}
Q4: 用java随机抽取一个人~~急用
产生一个整型随机数,范围1 -- 19,并保存到变量 r 中,代码如下:
int r = (int)(Math.random() * 19) + 1;
或者:
int r = (int)(Math.random() * 19 + 1);
Q5: 用java写一段随机抽取3个人的代码
用java.util.Radom类中人员随机抽取java代码的方法.
Random rd=new Random();
int persion_id=rd.nextInt(10);//这样可以得到0-10之间的一个随机数(假如总共有十个学生.)
然后用,threeStudent.add(students[stu_id])实现.
有人员随机抽取java代码了这个以后,就好说人员随机抽取java代码了.循环取得三个学生.送到threeStudent中去.
public void chooseThree()
{
Random rd=new Random();
for(int i=0;i3;i++)
{
threeStudent.add(students[stu_id]);
}
}
祝人员随机抽取java代码你好运...
关于人员随机抽取java代码和随机抽取人员程序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







