Android开发,使用Log打印日志,打印相同内容在Logcat中只能连续显示两次(遍历打印List中的内容,打印结果条数比List的size小)。

在Android开发中,遇到Logcat打印List内容时,即使List大小大于2,也只会显示两条相同内容的日志。这源于Android O之后Log在C层的优化,相同日志仅显示首尾两条并提示中间重复次数。通过调整打印策略或查看'chatty'日志可获取完整信息。
摘要由CSDN通过智能技术生成

这个问题也不算什么有技术含量的问题,不过我感觉还是有必要写篇博客记录,以免有人遇到和我一样的困扰,也是因为在网上搜索发现,没有多少文章说明这个如题的原因,可能是大多都没经历过这个问题,或者是感觉不值得一写。

背景:有一次在调试程序的时候,我打印List集合中的内容,但是发现打印出来的结果条数总是比List的size()方法返回值要小,重复了多少次都是一样,找了一会原因没找到,后来不了了之。

结果,没过多久,又遇到一样的情况:

这次的现象是我往集合中添加了重复的数据,然后打印发现无论重复数据添加多少,在logcat中打印的时候最多只能打印出两条,自然打印结果的总条数也比List的size方法要小,我想难道是List新加了去重的属性?但是如果去重为啥能显示两条?我尝试看了一下源码以及搜了一下, 很快推翻这个想法。

然后想,难道是Log本身加了新的特性,不能打印重复数据?然后我用System.out.print尝试打印,结果能正常打印,这就印证了我的假设,剩下就是找证据了。然后我就选择Log的一个方法点进去追sdk中的代码,结果追了几步就没法追了,因为只能看到下边截图中的情况,再往后找不到了。

最后,我只能搜索其他的文章了。结果,虽然这种文章很少,但确实已经有人写了,请参考&#x

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值