当前位置: 首页 > 面试题库 >

为什么ArrayList实现RandomAccess接口?

井嘉胜
2023-03-14
问题内容

ArrayList实现RandomAccess接口。RandomAccess接口没有方法。当我检查LinkedList它没有实现RandomAccess接口。

那么,在ArrayList实现的意义何在?


问题答案:

没有方法的接口在Java中称为标记接口。

根据RandomAccess的JavaDoc:

List实现使用的标记接口,指示
它们支持快速(通常为恒定时间)随机访问。

有关更多信息,请检查两个JavaDoc页面。

http://docs.oracle.com/javase/6/docs/api/java/util/RandomAccess.html

http://docs.oracle.com/javase/6/docs/api/java/util/ArrayList.html



 类似资料:
  • 为什么只有ArrayList和Vector实现了RandomAccess接口而LinkedList没有?据我所知,RandomAccess实现的类可以更快地检索集合中的元素。 此外,如果我尝试创建一个扩展java.util的自定义类。LinkedList还实现了RandomAccess接口,这是否使自定义类与LinkedList一样,但具有RandomAccess? 下面是实现我在第二点中所述内容

  • 问题内容: 在Java 实现中基于对象数组。 谁能解释我为什么使用数组而不是数据存储的实现?使用有什么好处? 问题答案: 在Java中,创建通用类型的数组并不容易。 简单的方法不能编译: 替换为,一切都很好(以容器实现中其他地方增加的复杂性为代价)。 有其他方法,但是它们呈现了一组不同的权衡。有关广泛的讨论,请参见如何在Java中创建通用数组?

  • 本文向大家介绍RandomAccess接口?相关面试题,主要包含被问及RandomAccess接口?时的应答技巧和注意事项,需要的朋友参考一下 查看源码我们发现实际上 接口中什么都没有定义。所以,在我看来 接口不过是一个标识罢了。标识什么? 标识实现这个接口的类具有随机访问功能。 在 )方法中,它要判断传入的list 是否 的实例,如果是,调用方法,如果不是,那么调用方法 实现了 接口, 而 没有

  • 问题内容: 在中,我们具有接口List和类: 并扩展AbstractList和 我的问题:为什么ArrayList有该implements List条款? 如果,我们不能说吗? 问题答案: 是。可以省略。但是,这是一个立即可见List。否则,将需要额外单击代码/文档。我认为这就是原因-清晰。 并补充的评论-这是为了展示该工具。总体而言,这只是为了方便起见,并减少了List实现之间的代码重复。

  • 问题内容: 我刚刚发现Java允许枚举实现接口。有什么好的用例? 问题答案: 枚举不仅仅代表被动集(例如颜色)。他们可以代表与功能更复杂的对象,所以你可能想进一步功能添加到这些是那么-例如,你可能如接口,等等。支持这些和组件。

  • 问题内容: 未能调用线程执行器将导致应用程序永不终止。 关闭ExecutorService的最佳实践是: 既然Java知道try-with-resources概念,那么如果我们能做到这一点岂不是很好吗? 问题答案: 该ExecutorService实际上具有 两种 与关机有关的方法;基于一个简单的事实,即关闭服务的 两种 方式都有意义。 因此:您将如何自动关闭服务?以一致的方式为每个人工作?! 因