我正在升级依赖于HashMap的Java 7迭代顺序的应用程序。 Java 8 HashMap改变了它的迭代顺序,这与这个应用程序的一些不兼容(可能是不好的设计),我不得不使用Java 7 HashMaps将应用程序成功迁移到Java 8.这就是我认为的做法:如何在Java 8中使用Java 7 HashMaps?
- 使扩展了常规的Java 8 HashMap的
- 查找了Java 7的HashMap的源代码,复制和粘贴的Java7HashMap。
- 替换“import java.util.HashMap;”用“import(...)。Java7HashMap;”
- 彻底测试一切。
这会是一个很好的做法吗?不幸的是,不能重写依赖于Java 7版本HashMap的部分。
HashMap没有排序,那么您是指“依赖Java 7对HashMap进行排序”的含义? – Eran
基本上所有较新版本的Java都向后兼容旧版本,我感觉一旦迁移到Java 8,就不应该面对Java 7代码的任何问题。 –
@Simze除非你依赖未公开的和实现细节,就像在这种情况下(这是HashMap在Java 7中内部的行为方式)。 – Tunaki