首页
壁纸
友链
关于
留言
Search
1
使用CloudFlare搭建邮局,无限邮箱!
236 阅读
2
甲骨文云Ubantu开放端口
135 阅读
3
使用Ja-netfilter激活Jetbrains Idea全家桶
120 阅读
4
利用宝塔面板部署Typecho博客系统,并搭配Joe主题使用!
116 阅读
5
VPS常用脚本整理
98 阅读
默认分类
VPS折腾
JAVA
登录
Search
标签搜索
VPS折腾
JAVA
老鱼
累计撰写
8
篇文章
累计收到
3
条评论
首页
栏目
默认分类
VPS折腾
JAVA
页面
壁纸
友链
关于
留言
搜索到
1
篇与
的结果
2022-11-16
Java实现简单的权重抽奖
/** * 根据权重获取奖励 * * @param awardMap * @return key:奖励 value:权重 * @param <T> */ public static <T> T getRandomValue(Map<T, Integer> awardMap) { // 获取权重和 int totalWeight = awardMap.values().stream().mapToInt(Integer::intValue).sum(); // 生成一个随机数 int randomNum = new Random().nextInt(totalWeight); int prev = 0; for (Map.Entry<T, Integer> entry : awardMap.entrySet()) { if (randomNum < prev + entry.getValue()) { return entry.getKey(); } prev += entry.getValue(); } return null; }经测试,运行100w次仅耗时121毫秒!
2022年11月16日
33 阅读
0 评论
0 点赞