假设我有 2 个对象数组,它们在以下模式中相互映射:
数组1:
String [] prog_types1 = {"Program1","Program2","Program3","Program4"};
和 array2 :
String [] prog_types2 ={"SubProgram1","SubProgram2","SubProgram3","SubProgram4",
"SubProgram5","SubProgram6","SubProgram7","SubProgram8","SubProgram9","SubProgram10"};
正如它的名字所理解的那样,prog_types2 是 prog_types1 的扩展,但是有一些重复的值,所以这些程序之间的完整映射看起来像这样:
prog_types1 prog_types2
ProgramType1 SubProgramType1
ProgramType1 SubProgramType2
ProgramType1 SubProgramType7
ProgramType1 SubProgramType9
ProgramType2 SubProgramType12
ProgramType2 SubProgramType7
ProgramType2 SubProgramType9
ProgramType3 SubProgramType1
ProgramType3 SubProgramType2
ProgramType3 SubProgramType21
ProgramType3 SubProgramType27
ProgramType3 SubProgramType7
ProgramType5 SubProgramType12
ProgramType5 SubProgramType9
我的问题是:从更快的处理和重用的角度来看,将这些数组相互映射的最佳方式是什么?我已将其实现为:
-- 类集(类 prog1 和 prog2 并在将其放入向量之后)...
-- 带有哈希集的哈希表
-- 可能还有一个数组
我正在寻找的方式不应该包括为 prog1 对象再次创建相同的 prog2 对象,就像前面描述的所有方式一样,而是通过例如索引位置或以任何其他方式映射它。只是寻找一种很好的算法方法来解决它......
提前致谢
ps 它应该只在几个类之间的 1 个包中使用,它的主要用途是基于 prog1 类型值的 prog2 类型值的填充
ps2 java7