当前位置: 首页 > news >正文

商城微信网站开发/常用的网络营销平台有哪些

商城微信网站开发,常用的网络营销平台有哪些,沃尔玛的网站建设,网站常识异常描述 Exception in thread “main” java.lang.IllegalArgumentException: Multiple entries with same key: 11 and 11 异常场景 测试环境提测一个功能马上要验收完毕,突然提示下单失败,和测试各种解释与本次更新无关;但测试担心是本次…

异常描述

Exception in thread “main” java.lang.IllegalArgumentException: Multiple entries with same key: 1=1 and 1=1


异常场景

  • 测试环境提测一个功能马上要验收完毕,突然提示下单失败,和测试各种解释与本次更新无关;但测试担心是本次更新的内容影响了整体流程拒绝发送验证报告;
  • 查看日志发现,异常信息类似上面,Bean中的一个属性字段重复了,还是作为Map的Key值重复的,Map的Key值是Set,自动过滤重复数据,为何报错

异常模拟

// import com.google.common.base.Function;
// import com.google.common.collect.Maps;public static void main(String[] args) {List<Integer> integerList = Arrays.asList(1,2,3,4,5,1,2,3,4);Map<Integer, Integer> map = Maps.uniqueIndex(integerList, new Function<Integer, Integer>() {@Overridepublic Integer apply(Integer input) {return input.intValue();}});System.out.println(map);}

源码分析

   // 方法调用public static <K, V> ImmutableMap<K, V> uniqueIndex(Iterable<V> values, Function<? super V, K> keyFunction) {return uniqueIndex(values.iterator(), keyFunction);}// 将集合中的数据放入 TerminalEntry<K, V>[] entries; public static <K, V> ImmutableMap<K, V> uniqueIndex(Iterator<V> values, Function<? super V, K> keyFunction) {Preconditions.checkNotNull(keyFunction);// 初始化 TerminalEntry<K, V>[] entries; Builder builder = ImmutableMap.builder();while(values.hasNext()) {V value = values.next();builder.put(keyFunction.apply(value), value);}return builder.build();}// size 大于 1 进入 default 方法public ImmutableMap<K, V> build() {switch(this.size) {case 0:return ImmutableBiMap.of();case 1:return ImmutableBiMap.of(this.entries[0].getKey(), this.entries[0].getValue());default:return new RegularImmutableMap(this.size, this.entries);}}RegularImmutableMap(int size, TerminalEntry<?, ?>[] theEntries) {this.entries = this.createEntryArray(size);int tableSize = Hashing.closedTableSize(size, 1.2D);this.table = this.createEntryArray(tableSize);this.mask = tableSize - 1;for(int entryIndex = 0; entryIndex < size; ++entryIndex) {TerminalEntry<K, V> entry = theEntries[entryIndex];K key = entry.getKey();// 判断是否有重复数据的方法// 将每个KEY取hash值与数组长度-1 取余// 保证数组中每个下标的位置上都有数据// 如果对新的KEY值Hash后在数组的该下标位置取到数据// 代表该数据已经存在int tableIndex = Hashing.smear(key.hashCode()) & this.mask;ImmutableMapEntry<K, V> existing = this.table[tableIndex];ImmutableMapEntry<K, V> newEntry = existing == null ? entry : new RegularImmutableMap.NonTerminalMapEntry(entry, existing);this.table[tableIndex] = (ImmutableMapEntry)newEntry;this.entries[entryIndex] = (ImmutableMapEntry)newEntry;this.checkNoConflictInBucket(key, (ImmutableMapEntry)newEntry, existing);}}private void checkNoConflictInBucket(K key, ImmutableMapEntry<K, V> entry, ImmutableMapEntry<K, V> bucketHead) {// 当已存在数据不空时调用此方法while(bucketHead != null) {checkNoConflict(!key.equals(bucketHead.getKey()), "key", entry, bucketHead);bucketHead = bucketHead.getNextInKeyBucket();}}// 抛出相应异常static void checkNoConflict(boolean safe, String conflictDescription, Entry<?, ?> entry1, Entry<?, ?> entry2) {if (!safe) {String var4 = String.valueOf(String.valueOf(conflictDescription));String var5 = String.valueOf(String.valueOf(entry1));String var6 = String.valueOf(String.valueOf(entry2));throw new IllegalArgumentException((new StringBuilder(34 + var4.length() + var5.length() + var6.length())).append("Multiple entries with same ").append(var4).append(": ").append(var5).append(" and ").append(var6).toString());}}

异常反思

  • 使用工具类之前一定要熟悉该工具类的使用场景;原来代码中使用此工具类的场景是商品完成下单统计不同的商品编号,但没有考虑到同一个商品一笔单中同时作为商品与赠品,同一个商品不同的价格,所以会记录两次
http://www.jmfq.cn/news/5168593.html

相关文章:

  • 卖花网站源码/上海最新新闻热点事件
  • 番禺人才网服务社会/seo01网站
  • 手机网站做seo/2022最新引流推广平台
  • 二级域名ip查询/金华百度seo
  • 网站关键字 怎么设置/实时热搜
  • HTML建网站/域名注册需要哪些条件
  • 微网站怎么建设/昆明优化网站公司
  • 本地建站工具/怎样申请网站注册
  • 网站换dns/新手怎么做seo优化
  • 杭州网站开发与设计/武汉大学人民医院精神科
  • 如何拥有自己的私人网站平台/网络优化大师下载
  • 给自己女朋友做的网站/佛山网站建设
  • 有什么好的做家常菜的网站/网站优化推广方法
  • 如何开网站建设公司/怎么进行网络营销
  • 北辰做网站公司/网页制作的软件
  • 杭州 网站建设公司排名/seo发帖论坛
  • 网站建设公司营业执照经营范围/手机百度网页版登录入口
  • 中财盛建设集团公司网站/品牌设计公司排名前十强
  • 黑猫会活动策划网站/官网seo关键词排名系统
  • 东莞手机网站建设公司/百度小说风云排行榜
  • 杭州知名的企业网站建设策划/广告竞价
  • 玩游戏的网页/网站整体优化
  • 北京专业网站建设网站推广/全球网络营销公司排名
  • 案例 网站/自己做网站难吗
  • 门户网站做商城的/百度广告平台电话
  • 如何建设网站的能力/关键词推广操作
  • ASP网站开发技术期末考试/联赛积分榜排名
  • 福州 网站建设/广州网站建设费用
  • 盐城网站建设小程序公司/百度网页版主页网址
  • 因酷西安网站建设公司怎么样/看b站二十四小时直播间