编写一个简单的抽奖系统,可以实现多人抽奖,不同奖项不同个数的功能。
时间: 2024-03-26 22:36:23 浏览: 17
好的,以下是一个简单的Java多人抽奖系统的示例代码:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Lottery {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// 定义奖品列表和对应的中奖人数
String[] prizes = {"一等奖", "二等奖", "三等奖", "四等奖", "五等奖"};
int[] prizeCounts = {1, 2, 3, 4, 5};
// 定义参与抽奖的人员列表
List<String> participants = new ArrayList<String>();
participants.add("张三");
participants.add("李四");
participants.add("王五");
participants.add("赵六");
participants.add("钱七");
// 提示用户选择要抽取的奖项
System.out.println("请选择要抽取的奖项:");
for (int i = 0; i < prizes.length; i++) {
System.out.println((i + 1) + ". " + prizes[i] + "(剩余" + prizeCounts[i] + "个)");
}
int selectedPrize = input.nextInt() - 1;
// 抽取中奖者
List<String> winners = new ArrayList<String>();
while (prizeCounts[selectedPrize] > 0) {
int luckyIndex = (int)(Math.random() * participants.size());
String luckyParticipant = participants.get(luckyIndex);
winners.add(luckyParticipant);
participants.remove(luckyIndex);
prizeCounts[selectedPrize]--;
}
// 输出中奖者名单
System.out.println("恭喜以下人员获得" + prizes[selectedPrize] + ":");
for (String winner : winners) {
System.out.println(winner);
}
}
}
```
这个程序会先提示用户选择要抽取的奖项,然后根据用户的选择生成相应的中奖人数。接着,程序会从参与抽奖的人员列表中随机抽取中奖者,并将中奖者从列表中移除,直到对应奖项的中奖人数用完为止。最后,程序输出中奖者的名单。