对数据对比的理解

遇到问题的场景:

页面分 A B 

第一次A进入B 从B返回A需要保存一次数据  再次从A页面进入B页面保存一次数据 返回A页面 这里只是说场景和数据的保存

(和从A页面进去B页面的次数么有关系) 

下来提供两种思路 一种是双层for循环 一种是Map<inter,String> 

1.for循环的思路是先将第一次的数据保存起来 然后循环第一次的list 给一个boolean 值用来记录循环位置 因为如果不加的话会出现两个问题 1. 出现重复数据 2.会内存溢出 1问题出现的原因  因为两次如果选择的数据不一样两个list长度不一样 对比起来就会出现重复数据  2.问题2的出现 因为如果是你是直接将新选的数据加到第一次选择里面的话 就会出现内存溢出  所以我两次for循环之后后面的if判断 才是填充数据的地方  

2.思路2

这种的话  先创建一个空的map集合 然后for循环第一次的list 向map里面存一个相比较的值 存一个键值对 然后循环第二次保存的值  用第一次的值对比第二次的值 我这里的逻辑是只加载不相同的值 然后添加到第一次的list就可以了
对于效率来说 是比较推荐第二种的 因为第一种处理数据量比较小的可以的 两层for循环相对比较损耗性能 而且数据量比较大的话可以会出现anr的问题  因为第一种是相乘的 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值