问题描述
我有 2 个 hashmap 对象,ctx.vars.hashOld
和 ctx.vars.hashNew
包含:
{(agg_ecpm_hourly_prt_20210103_20210109 AND anly_prod AND anly_prod_db AND anly_prod)= 7918041,(multikey_lift_history AND anly_prod AND anly_prod_db AND anly_prod)= 32306281,(agg_dmm_hourly_prt_20210103_20210109 AND anly_prod AND anly_prod_db AND anly_prod)= 39292548,(agg_dmm_daily_prt_20201129_20201205 AND anly_prod AND anly_prod_db AND anly_prod)= 6065195,(dim_global_multikey_lookup_history AND anly_prod AND anly_prod_db AND anly_prod)= 79897376,(traceability_stats_hourly_prt_20201101_20201107 AND ops_ma AND anly_prod_db AND anly_prod)= 20613344,(traceability_line_item_prt_20210103_20210109 AND ops_ma AND anly_prod_db AND anly_prod)= 29406842,(rtap_agg_pacing_health AND anly_prod AND anly_prod_db AND anly_prod)= 18532079, (traceability_stats_hourly_prt_20201213_20201219 AND ops_ma AND anly_prod_db AND anly_prod)= 25817110,(agg_trafficscope_hourly_prt_20210103_20210109 AND anly_prod AND anly_prod_db AND anly_prod)= 18463490,(traceability_line_item_prt_20201227_20210102 AND ops_ma AN d anly_prod_db AND anly_prod)= 38672393,(traceability_stats_hourly_prt_20201206_20201212 AND ops_ma AND anly_prod_db AND anly_prod)= 26292726,(agg_dmm_daily_prt_20201108_20201114 AND anly_prod AND anly_prod_db AND anly_prod)= 5677117,(traceability_io_prt_20210103_20210109 AND ops_ma AND anly_prod_db AND anly_prod)= 11932531,(agg_settings_model_hourly_prt_20210103_20210109 AND anly_prod AND anly_prod_db AND anly_prod)= 3690857,(dim_company_multikey_lookup_history AND anly_prod AND anly_prod_db AND anly_prod)= 52817881,(agg_stats_new_metrics AND anly_prod AND anly_prod_db AND anly_prod)= 1312744,(traceability_stats_hourly_prt_20201220_20201226 AND ops_ma AND anly_prod_db AND anly_prod)= 25207340,(agg_stats_daily AND anly_prod AND anly_prod_db AND anly_prod )=1930913,(rtap_agg_pacing_health AND anly_stage AND anly_prod_db AND anly_prod)=946000,(traceability_stats_hourly_prt_20201108_20201114 AND ops_ma AND anly_prod_db1201201201201201201201201201201201201201201201201201201201201000000000图6和ops_ma AND anly_prod_db AND anly_prod)= 38034899,(traceability_stats_hourly_prt_20210103_20210109 AND ops_ma AND anly_prod_db AND anly_prod)= 17349196,(agg_dmm_daily_prt_20201122_20201128 AND anly_prod AND anly_prod_db AND anly_prod)= 6195309,(traceability_io_prt_20201227_20210102 AND ops_ma AND anly_prod_db AND anly_prod)= 15908106,(traceability_io_prt_20201220_20201226 AND ops_ma AND anly_prod_db AND anly_prod)=16732576}
{(agg_dmm_daily_prt_20201122_20201128 AND anly_prod AND anly_prod_db AND anly_prod)= 6215465,(traceability_stats_hourly_prt_20210103_20210109 AND ops_ma AND anly_prod_db AND anly_prod)= 17935050,(dim_global_multikey_lookup_history AND anly_prod AND anly_prod_db AND anly_prod)= 82151687,(agg_dmm_hourly_prt_20210103_20210109 AND anly_prod AND anly_prod_db AND anly_prod)= 42790683,(traceability_io_prt_20201220_20201226 AND ops_ma AND anly_prod_db AND anly_prod)= 15834156,(agg_ecpm_hourly_prt_20210103_20210109 AND anly_prod AND anly_prod_db AND anly_prod)= 8532763,(agg_dmm_daily_prt_20201108_20201114 AND anly_prod AND anly_prod_db AND anly_prod)= 5682918,(traceability_stats_hourly_prt_20201220_20201226 AND ops_ma AND anly_prod_db AND anly_prod)= 23179579, (traceability_line_item_prt_20210110_20210116 AND ops_ma AND anly_prod_db AND anly_prod)=6030912,(traceability_line_item_prt_20210103_20210109 AND ops_ma AND anly_prod10_model10d103_prod10_model1d103_prod10_model103_103_10-model1d103_prod)=6030912 _20210109 AND anly_prod AND anly_prod_db AND anly_prod)= 4302495,(agg_trafficscope_hourly_prt_20210103_20210109 AND anly_prod AND anly_prod_db AND anly_prod)= 23497940,(agg_dmm_hourly_prt_20210110_20210116 AND anly_prod AND anly_prod_db AND anly_prod)= 8878420,(agg_stats_daily AND anly_prod AND anly_prod_db AND anly_prod)= 1942286,(traceability_stats_hourly_prt_20201206_20201212 AND ops_ma AND anly_prod_db AND anly_prod)= 24699429,(traceability_stats_hourly_prt_20201101_20201107 AND ops_ma AND anly_prod_db AND anly_prod)= 20613344,(agg_stats_new_metrics AND anly_prod AND anly_prod_db AND anly_prod)= 1487951,(multikey_lift_history AND anly_prod AND anly_prod_db AND anly_prod)= 33413054,(dim_company_multikey_lookup_history AND anly_prod AND anly_prod_db AND anly_prod)= 57462519,(traceability_stats_hourly_prt_20201108_20201114 AND ops_ma AND anly_prod_db AND anly_prod)= 22081784,(traceability_io_prt_20210103_20210109 AND ops_ma AND anly_prod_db AND anly_prod)= 12327906,(agg_dmm_daily_prt_ 20201129_20201205 AND anly_prod AND anly_prod_db AND anly_prod)= 6072952,(rtap_agg_pacing_health AND anly_prod AND anly_prod_db AND anly_prod)= 18430105,(traceability_line_item_prt_20201220_20201226 AND ops_ma AND anly_prod_db AND anly_prod)= 38564796,(traceability_io_prt_20201227_20210102 AND ops_ma AND anly_prod_db AND anly_prod)= 14163152,(traceability_line_item_prt_20201227_20210102 AND ops_ma AND anly_prod_db AND anly_prod)=34909797,(traceability_stats_hourly_prt_20201213_20201219 AND ops_ma AND anly_prod_db AND anly_prod)=23921212}
分别。它们包含相同的键但具有不同的值。我正在尝试计算同一键的值之间的差异,但在使用一个对象的键作为获取另一个对象的值的输入时获得 null
值:
Map mapNew = ctx.vars.hashNew;
Map mapOld = ctx.vars.hashOld;
def test = [];
for (def key : mapNew.keySet()){
def valNew = mapNew.get(key);
def valOld = mapOld.get(key);
test.add([valOld,valNew]);
}
我会在 test
中得到类似的信息:
{0=[null,18430105],1=[null,6030912],2=[null,6215465],3=[null,17935050],4=[null,23497940],5=[null,29317] ],6=[null,15834156],7=[null,6072952],8=[null,42790683],9=[null,57462519],10=[null,82151687],14=[null,42790683] 12=[null,14163152],13=[null,30413191],22081784],15=[null,1942286],16=[null,33413054],17=[null,27,80] [null,23921212],19=[null,5682918],20=[null,38564796],21=[null,34909797],22=[null,20613344],23=[null,4302],24699429],25=[null,8878420],26=[null,8532763]}
尽管 mapOld
肯定具有与 mapNew
相同的键。关于为什么会发生这种情况的任何想法?
UPDATE 我实际上是将一个 StringBuilder 对象传递到键中。使用 toString()
更改为字符串类型。除此之外,我没有使用 keySet()
中的键,而是将它们放入单独的字符串列表中并使用它,现在我看到了想要的结果。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)