簡體   English   中英

此層次結構的最佳基於對象的數據結構是什么?

[英]What is the best Object based data structure for this hierarchy?

此層次結構的最佳基於對象的數據結構是什么

"text1"
   |---> "text2"
            |-----> List of objs

我可以做點什么

class Test(){
      String text1;
      HashMap<String,List<Obj>> text2ListOfObjs;
}

這個類的消費者會做類似的事情

for(Test test: tests){
   iterate over hashmap
      ....
}

還有其他建議嗎?

如果要將“text1”映射到“text2”並將其映射到對象列表,為什么不使用嵌套映射: Map<String, Map<String, List<Obj>>>

面向對象的設計應該傳達意義。 您應該向我們提供此層次結構的實際上下文而不是抽象元素。 任何數據結構都可以用於反映您呈現的元素,但它不一定是一個好的設計,具體取決於含義,行為和上下文。

一些可能的結構:

class Person {
    String name;
    Relation relation;
}

class Relation {
    String type;
    List<Person> members;
}

例如,名為“Arnie”的人員和類型為“friends”的人員以及名為“Bert”,“Minnie”和“Joel”的人員。

class Song {
    String title;
    String composer;
    List<Note> notes;
}

或者更平坦的模型:

Object[] data;

我們可以實例化:

data = new Object[] { "text1", "text2", new Object(), new Integer(), new BlaBla() };

所有這些都是適合該法案的“面向對象”模型,但這最好取決於您要表示的內容以及系統應如何表現。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM