使用java写一个随机抽奖准备一个数组{9,666,188,520,99999}写个for循环控制抽奖5次,每次抽奖,都从数组中随机找出一个金额,如果该金额不是0,则代表抽中,接着用0替换该位置处的金额,然后继续下一个粉丝的抽奖; 如果抽中的金额发现是0,代表该位置处的红包之前被别人抽走了,则从新从数组中随机找出一个金额,继续判断!直至抽中的金额不是0!
时间: 2024-04-17 12:27:54 浏览: 81
用java写一个抽奖游戏!来体验下黑心老板的感觉!.zip
好的,我可以帮你写一个满足你需求的Java代码。以下是实现随机抽奖的代码示例:
```java
import java.util.Arrays;
import java.util.Random;
public class RandomLottery {
public static void main(String[] args) {
int[] amounts = {9, 666, 188, 520, 99999};
for (int i = 0; i < 5; i++) {
int index = getRandomIndex(amounts.length);
int amount = amounts[index];
while (amount == 0) {
index = getRandomIndex(amounts.length);
amount = amounts[index];
}
System.out.println("Congratulations! You won " + amount + " yuan.");
amounts[index] = 0;
}
System.out.println("All lotteries have been drawn.");
}
private static int getRandomIndex(int length) {
Random random = new Random();
return random.nextInt(length);
}
}
```
这段代码使用了一个整型数组 `amounts` 存储抽奖金额,然后通过 `for` 循环控制抽奖5次。在每次抽奖中,我们使用 `getRandomIndex` 方法随机生成一个索引,然后从数组中取出对应位置的金额。如果抽到的金额是0,就重新生成索引,直到抽到非0金额为止。抽到非0金额后,输出中奖信息,然后将该位置处的金额置为0。
希望能帮到你!如果还有其他问题,请随时提问。
阅读全文