我正在使用兩個不同的庫,每個庫都有自己的類型。這兩種類型都有x和y座標,而每種都有一些特殊的字段。我想將兩種類型(例如PointA
和PointB
)都存儲在列表中。我不能使用基類,因爲PointA
和PointB
是庫類型,不能修改。在列表中存儲不同的(不可修改的)類型
有這樣的事情,我不得不實際使用List內的列表(點數組數組)。我從庫調用的方法1返回List<PointA>
,庫2的方法返回List<PointB>
。
在一個List中存儲這些點陣的最佳方式是什麼?使用List<List<Object>>
並將返回數組中的每個對象轉換爲Object?看起來像這樣可以做得更優雅。
'PointA'和'PointB'是否共享一個共同的'interface'或者base-type(除了'object')? –
您是否考慮過使用適配器模式?每個適配器可以存儲其中一種類型的點,並且您將存儲點適配器的列表。 – Jonny
你究竟在做什麼?即使它們具有共同的成員值,它們也不能以任何方式互換使用(除非這些庫以某種方式構建,例如使用反射或通用接口)。 – Mario