Android面试专题系列(六):Activity中为什么要用bundle来传递数据,而不用HashMap来代替?

博客探讨面试问题:为何在Activity中使用Bundle通过ArrayMap而不是HashMap传递数据。通过源码分析,指出ArrayMap适用于小数据量,内存占用更少,而Intent的数据要求可序列化,Parcelable的性能优于Serializable,因此Bundle选择ArrayMap更优。
摘要由CSDN通过智能技术生成

不诗意的女程序媛不是好厨师~
转载请注明出处,From李诗雨—https://blog.csdn.net/cjm2484836553/article/details/105152708

在这里插入图片描述

面试官:“你一定看过ActivityonCreate()方法吧,为什么它要用bundle来传递数据,而不用HashMap来代替呢?”

这个问题就要我们来看看源码了,我们点进去Bundle来一探究竟:
在这里插入图片描述
我们来一下存储数据的方法putByte(), 发现它调用的是super.putByte(),我们继续跟进:
在这里插入图片描述

我们发现它调用的是mMapput()方法。而且,我们环顾四周,他们都是调用的mMapput()方法。

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值