好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

java实现抽奖功能解析

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

抽一个:

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

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

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楼抽取多个个幸运儿。

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

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

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实现抽奖功能解析的详细内容...

  阅读:27次