LuckyKit.java
1.6 KB
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package com.teplot.lucky;
import java.util.Random;
/**
* Depiction: 红包生成工具
* <p>
* Modify:
* <p>
* Author: Kevin Lynn
* <p>
* Create Date:2017年9月18日 上午10:27:41
*
*/
public class LuckyKit {
static Random random = new Random();
static {
random.setSeed(System.currentTimeMillis());
}
public static void main(String[] args) {
long money = 1000000l;
long count = 5000l;
long sum = 0;
LuckyMoney lucky = new LuckyMoney(money, count, 0);
for (int i = 0; i < count; i++) {
lucky = generate(lucky);
System.out.println("第" + (i + 1) + "个红包金额-->" + lucky.getLuckyMoney() + "分");
sum += lucky.getLuckyMoney();
if(lucky.getLuckyMoney()>400){
System.out.println("=========超过平均值的红包金额-->" + lucky.getLuckyMoney() + "分=========");
}
}
System.out.println("红包总额度-->" + sum + "分");
}
/**
*
* @param lucky
* @return {@link LuckyMoney}
*/
public static LuckyMoney generate(LuckyMoney lucky) {
if (lucky == null || lucky.getLeftCount() == 0 || lucky.getLeftMoney() == 0) {
return null;
}
if (lucky.getLeftCount() != 1) {
int luckyMoney = random.nextInt(lucky.getMax());
if (luckyMoney < 1) {
luckyMoney += 1;
}
lucky = new LuckyMoney(lucky.getLeftMoney() - luckyMoney, lucky.getLeftCount() - 1, 0);
lucky.setLuckyMoney(luckyMoney);
} else {
int luckyMoney = (int) lucky.getLeftMoney();
lucky = new LuckyMoney(lucky.getLeftMoney() - luckyMoney, lucky.getLeftCount() - 1, 0);
lucky.setLuckyMoney(luckyMoney);
}
return lucky;
}
}