首先定義一個紅包類:
<span style="font-family:SimSun;font-size:18px;">public class Money {
// remainNum剩余的紅包數量
// remainMoney 剩余的錢
public static int remainNum;
public static double remainMoney;
}</span>
<span style="font-family:SimSun;font-size:18px;">public static double getRandomMoney(Money myMoney) {
// remainSize 剩余的紅包數量
// remainMoney 剩余的錢
// 隨機,額度在0.01和(剩余平均值*2)之間
double min= 0.01;
double max= myMoney.remainMoney / myMoney.remainNum * 2;
if (myMoney.remainNum == 1) {
myMoney.remainNum--;
return (double) Math.round(myMoney.remainMoney * 100) / 100;
}
Random r= new Random();
double money = r.nextDouble() * max;
money = money <= min ? 0.01: money;
money = Math.floor(money * 100) / 100;
myMoney.remainNum--;
myMoney.remainMoney -= money;
return money;
}</span>
<span style="font-family:SimSun;font-size:18px;">public static void main(String[] args) {結果:
// TODO Auto-generated method stub
Money m=new Money();
m.remainNum=5;
int count=m.remainNum;
m.remainMoney=50;
for(int i=1;i<=count;i++){
System.out.println("第"+i+"次獲取的紅包為"+getRandomMoney(m)+"元");
}
}
</span>
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。