最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java 微信隨機(jī)紅包算法代碼實例

 更新時間:2016年10月11日 14:02:40   作者:李明澤  
這篇文章主要介紹了java 微信隨機(jī)紅包算法的相關(guān)資料,并附實例代碼,需要的朋友可以參考下

前幾天的一個晚上突然想到微信紅包應(yīng)該有一個隨機(jī)算法,就自己試著寫了下,也不知道對不對,看了看網(wǎng)上的說法,好像到現(xiàn)在為止官方也沒有給出一個確切的算法,只好在這里獻(xiàn)丑了,先貼出代碼:

 public static double [] getMoney(double money, int num){
    Random r = new Random();
    DecimalFormat format = new DecimalFormat(".##");
    
    double middle = Double.parseDouble(format.format(money/num));
    double [] dou = new double[num];
    double redMoney = 0;
    double nextMoney = money;
    double sum = 0;
    int index = 0;
    for(int i=num;i>0;i--){
      if(i == 1){
        dou[index] = nextMoney;
      }else{
        while(true){
          String str = format.format(r.nextDouble()*nextMoney);
          redMoney = Double.parseDouble(str);
          if(redMoney>0 && redMoney < middle){
            break;
          }
        }
        nextMoney = Double.parseDouble(format.format(nextMoney - redMoney));
        sum = sum + redMoney;
        dou[index] = redMoney;
        middle = Double.parseDouble(format.format(nextMoney/(i-1)));
        index++;
      }
    }
    return dou;
  }

這里一個基本思路是這樣的:首先算出紅包的平均值,再通過一個隨機(jī)紅包數(shù)小于這個平均值的紅包,當(dāng)該紅包發(fā)完后,紅包總金額需要相應(yīng)減少,同時重新計算這個平均值:新的總金額%(原總紅包數(shù)-1),直到最后一個紅包時,把所有的剩余金額塞進(jìn)去。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • java8的stream如何取max

    java8的stream如何取max

    這篇文章主要介紹了java8的stream如何取max問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Spring常見錯誤之Web嵌套對象校驗失效解決辦法

    Spring常見錯誤之Web嵌套對象校驗失效解決辦法

    這篇文章主要介紹了Spring常見錯誤之Web嵌套對象校驗失效解決的相關(guān)資料,通過在Phone對象上添加@Valid注解,問題得以解決,需要的朋友可以參考下
    2025-01-01
  • RocketMQ的push消費方式實現(xiàn)示例

    RocketMQ的push消費方式實現(xiàn)示例

    這篇文章主要為大家介紹了RocketMQ的push消費方式實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>
    2022-08-08
  • java開發(fā)之SQL語句中DATE_FORMAT函數(shù)舉例詳解

    java開發(fā)之SQL語句中DATE_FORMAT函數(shù)舉例詳解

    要將日期值格式化為特定格式,請使用DATE_FORMAT函數(shù),下面這篇文章主要給大家介紹了關(guān)于java開發(fā)之SQL語句中DATE_FORMAT函數(shù)的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-05-05
  • 解決mybatis三表連接查詢數(shù)據(jù)重復(fù)的問題

    解決mybatis三表連接查詢數(shù)據(jù)重復(fù)的問題

    這篇文章主要介紹了解決mybatis三表連接查詢數(shù)據(jù)重復(fù)的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • Java socket字節(jié)流傳輸示例解析

    Java socket字節(jié)流傳輸示例解析

    這篇文章主要為大家詳細(xì)介紹了Java socket字節(jié)流傳輸示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 一文看懂springboot實現(xiàn)短信服務(wù)功能

    一文看懂springboot實現(xiàn)短信服務(wù)功能

    項目中的短信服務(wù)基本上上都會用到,簡單的注冊驗證碼,消息通知等等都會用到。這篇文章主要介紹了springboot 實現(xiàn)短信服務(wù)功能,需要的朋友可以參考下
    2019-10-10
  • Java如何使用ConfigurationProperties獲取yml中的配置

    Java如何使用ConfigurationProperties獲取yml中的配置

    這篇文章主要介紹了Java如何使用ConfigurationProperties獲取yml中的配置,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Spring Task定時任務(wù)的配置和使用詳解

    Spring Task定時任務(wù)的配置和使用詳解

    本篇文章主要介紹了Spring Task定時任務(wù)的配置和使用詳解,實例分析了Spring Task定時任務(wù)的配置和使用的技巧,非常具有實用價值,需要的朋友可以參考下
    2017-04-04
  • Java BufferedOutputStream類的常用方法講解

    Java BufferedOutputStream類的常用方法講解

    這篇文章主要介紹了Java BufferedOutputStream類的常用方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10

最新評論

洮南市| 星座| 沂南县| 阳谷县| 普陀区| 雷山县| 遵化市| 宜丰县| 临城县| 海宁市| 吴川市| 长阳| 海门市| 安化县| 墨竹工卡县| 夹江县| 达尔| 澜沧| 焉耆| 平塘县| 清丰县| 曲阜市| 肥西县| 平顶山市| 上杭县| 日照市| 靖州| 梁山县| 伊宁市| 印江| 高密市| 南京市| 饶阳县| 仁寿县| 新巴尔虎左旗| 武功县| 兴和县| 买车| 拉孜县| 新乐市| 玉山县|