我来自 Perl,散列和数组使用起来很舒服,因为它们非常动态,并且在后台做了很多通常会惹恼程序员的事情。
与此类似,我开始使用 HashMap 和数组列表,因为它们使编程工作变得更容易和更快。但性能如何呢?是否建议在较大的项目中使用这些类型的数据,或者我应该只将自己限制在带有字符串和数组的 Java 核心?
感谢您的所有回答:-)))
最佳答案
如果您有不变的数据,您将写入一次(或几次)并读取多次,则数组可能(稍微)比ArrayList
快。数组消耗的内存也可能比 ArrayList 少(略微)。然而,ArrayList
特别是一个经常使用的类,因此能够使用它非常有用(更常见的是,与实现 List
接口(interface)的其他类一起使用),在它的下面,元素存储在一个数组中,因此访问不应该真的变慢。
HashMap
实现基于散列的映射。它们通常是 O(1)
访问数据结构和实现,因此确实值得推荐。作为实现 Map
接口(interface)的类,它们也是将一个对象映射到另一个对象的有用方法,这是一个常见的问题。
大多数集合
类(和接口(interface))都设计良好且易于使用。
关于java - Java中推荐使用ArrayList和HashMap?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21759178/