为了账号安全,请及时绑定邮箱和手机立即绑定

Map<String, Object> 第二个对象为什么是Object呢?

谁能解释一下为什么Map

第二个参数是Object呢?java没太学好。,object>

正在回答

5 回答

万物基于object,如果写string那么只能存string类型的,如果写object就可以存你想存的数据。就比如课件中可以存string和图片资源id,如果object改成string,那么就没法把图片资源存进去,到时候列表就没法显示图片了

0 回复 有任何疑惑可以回复我~
#1

Charlie_Gu 提问者

非常感谢!
2016-11-28 回复 有任何疑惑可以回复我~

这个解释很简单,首先你需要真的Object是超类,所有的其他类都是由它衍变而来,你知道上一句话后,就能理解了,此处的Object不是某个特定类,而是像接口,抽象之类的东西,它用来统称所有类,即此处的Object表示所有类型!!

1 回复 有任何疑惑可以回复我~

因为在SimpleAdapter中会存image的id,即int类型,也可能是是String类型。Java中所有类的父类是Object类,所以Map<String, Object>的话可以存任何类型的数据。Java中向上转型是安全的。

0 回复 有任何疑惑可以回复我~

前面的String意味着第一参数只能为“String”类型的参数。

Object 则意味着第二参数不局限于某一种参数类型。

个人理解就是为了让Map<key,value>,可以存储不同类型的数据。

1 回复 有任何疑惑可以回复我~

Map<String,Obejct>表示一个键值对,Map对象的键是String类型,值是Object类型。之所以用Object个人理解是因为Object是所有类、结构、枚举和委托的最终基类。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第二门课(第1季)
  • 参与学习       111161    人
  • 解答问题       1457    个

本课程由浅入深地带您学会Android的常用控件的开发和使用

进入课程

Map<String, Object> 第二个对象为什么是Object呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信