JAVA算法——模拟微信红包

         /*
	 * 微信红包
	 */
	public void weChatRedPacket(double money, int people){
		DecimalFormat df = new DecimalFormat("######0.00");
		int sPeople = people;
          //创建保存每个红包金额的集合 ArrayList al = new ArrayList(); double a[] = new double[people]; if(people == 1){ a[0]=money; al.add(money); }else{ for(int i=0; i <people; i++){ int f = people-1; if(i==f){ a[i]=Double.parseDouble(df.format(money)); al.add(a[i]); }else{ a[i]=Double.parseDouble(df.format(Math.random()*(money/sPeople))); al.add(a[i]); money=money-a[i]; sPeople=sPeople-1; } } }
          //打乱集合顺序 Collections.shuffle(al); System.out.println(al); }

  

posted on 2017-02-06 16:42  leeliwen  阅读(245)  评论(0编辑  收藏  举报