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

List和ArrayList有什么区别?

List和ArrayList有什么区别?

萧十郎 2019-09-19 16:24:37
我最近在办公室的android项目中使用了ArrayList,我在List和ArrayList之间有点混淆,两者的区别是什么,我应该使用什么?我也看到了它的一些实现。List<SomeObject> myList = new ArrayList<SomeObject>();ArrayList<SomeObject> myList = new ArrayList<SomeObject>();这两个实例有什么区别?
查看完整描述

3 回答

?
POPMUISE

TA贡献1765条经验 获得超5个赞

两个示例中的列表实现之间没有区别。但是,您可以在代码中进一步使用变量myList。


将列表定义为:


List myList = new ArrayList();

您只能调用List接口中定义的方法和引用成员。如果您将其定义为:


ArrayList myList = new ArrayList();

除了那些定义从List继承的成员之外,您还可以调用特定于ArrayList的方法并使用特定于ArrayList的成员。


然而,当您在第一个示例中调用List接口的方法(在ArrayList中实现)时,将调用ArrayList中的方法(因为List接口不实现任何方法)。


这就是所谓的多态性。你可以阅读它。


查看完整回答
反对 回复 2019-09-19
?
呼如林

TA贡献1798条经验 获得超3个赞

List不是一个类,它是一个接口。它没有实现任何方法。因此,如果在List引用上调用方法,实际上在两种情况下都调用ArrayList的方法。

查看完整回答
反对 回复 2019-09-19
?
大话西游666

TA贡献1817条经验 获得超14个赞

伙计们,请仔细阅读我的帖子。不要将定义与实现混合在一起。在这两种情况下,实现都是相同的:ArrayList。变量的定义不同。不知道你在答案中想要改变什么

查看完整回答
反对 回复 2019-09-19
  • 3 回答
  • 0 关注
  • 1273 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信