java实现抽奖功能解析

作者:秀发如云 时间:2021-08-29 16:08:21 

本文实例为大家分享了java实现抽奖功能的具体代码,供大家参考,具体内容如下

抽一个:

输入抽奖人数,生成随机数字进行抽奖。
比如:楼主抽幸运儿送游戏,选择前100楼抽取一个幸运儿。


import java.util.Random;
import java.util.Scanner;

public class Gift {
public static void main(String[] args) {

Scanner sc = new Scanner(System.in);
 System.out.println("请您输入抽奖人数:");
 int n = sc.nextInt();
 Random r1 = new Random();
 System.out.println("幸运儿是:"+(r1.nextInt(n)+1));

}
}

抽多个:

输入抽奖人数以及中奖人数,生成随机数字进行抽奖。

比如:楼主抽幸运儿送游戏,选择前100楼抽取多个个幸运儿。

注:下面代码还未解决 抽到相同序号 的问题


import java.util.Random;
import java.util.Scanner;

public class Gift {
public static void main(String[] args) {

Scanner sc = new Scanner(System.in);
 System.out.print("请您输入抽奖人数:");
 int n = sc.nextInt();
 System.out.print("请您输入中奖人数:");
 int num;

// 判断中奖人数是否符合规则
 while (true) {
  num = sc.nextInt();
  if (n < num) {
   System.out.println("中奖人数 > 抽奖人数,不符合规则。");
   System.out.print("\n请重新输入中奖人数:");

} else
   break;
 }
 System.out.println("");
 // 创建一个整型数组,来存放抽取的多个幸运儿,来限制不能出现相同序号的幸运儿。
 int[] lucky = new int[num];
 Random r1 = new Random();
 for (int i = 0; i < num; i++) {
  while (true) {
   int luckyMan = r1.nextInt(n) + 1;
   lucky[i] = luckyMan;
   int j = 1;
   if (i == 0) {
    System.out.println("幸运儿是:" + luckyMan);
    break;
   }
   else{
    // 要不等于前面所有的 即 3!=2 && 3!=1 && 3!=0
    if (lucky[i] != lucky[i-1]){
     System.out.println("幸运儿是:"+luckyMan);
     break;
    }
   }
  }
 }
}
}

来源:https://blog.csdn.net/qq_45896301/article/details/114693662

标签:java,抽奖
0
投稿

猜你喜欢

  • Java非侵入式API接口文档工具apigcc用法详解

    2023-11-24 10:01:00
  • Spring BeanDefinition使用介绍

    2023-11-24 10:29:10
  • Java实现的计算最大下标距离算法示例

    2022-02-09 19:14:37
  • Android Flutter实现仿闲鱼动画效果

    2023-07-15 15:32:47
  • Java+MySQL实现学生信息管理系统源码

    2023-11-28 04:29:31
  • swagger添加权限验证保证API(接口)安全性(两种方法)

    2023-11-27 18:58:33
  • spring boot集成smart-doc自动生成接口文档详解

    2023-11-28 23:08:02
  • Android采取ContentObserver方式自动获取验证码

    2023-07-31 16:20:48
  • Spring Cloud Config RSA简介及使用RSA加密配置文件的方法

    2023-11-28 22:39:26
  • Spring实战之使用ClassPathResource加载xml资源示例

    2023-11-28 23:00:30
  • Spring中的@Transactional的工作原理

    2023-08-06 02:00:04
  • Servlet3.0学习总结之基于Servlet3.0的文件上传实例

    2023-09-02 01:51:33
  • java开发ShardingSphere的路由引擎类型示例详解

    2023-11-29 01:18:56
  • 一文精通Java中的volatile关键字

    2023-11-24 04:17:14
  • Java 网络编程总结

    2023-11-10 22:19:29
  • 分析讲解SpringMVC注解配置如何实现

    2023-10-30 17:23:58
  • ios百度地图的使用(普通定位、反地理编码)

    2023-07-03 15:26:17
  • SpringBoot 利用thymeleaf自定义错误页面

    2023-11-29 08:29:55
  • 详解Java中的时区类TimeZone的用法

    2023-11-29 02:03:09
  • Java数组索引异常产生及解决方案

    2023-11-05 16:52:27
  • asp之家 软件编程 m.aspxhome.com