簡體   English   中英

Java社交網絡節點集合解決方案

[英]Java social networking node collection solution

Java有點新鮮。 在成功之前我使用過各種Java集合(treeset,hashmap,arraylist)。 我的問題類似於類似Facebook的網絡。 我在會員組織中有各種各樣的用戶,我想在會員中為每個人存儲一個集合,其他成員是按興趣鏈接到該成員的。 我認為最簡單的解決方案是為每個成員動態分配一個新的簡單集合,這些成員將鏈接其他成員名稱(現有的或新的),但看起來Java不允許動態分配新集合。

我可以在一個hashmap中有一個連接的字符串,列出與鍵名相關的所有名稱,但這似乎是一個不方便的解決方案。 我認為這是一個社交常見的網絡問題,有一個優雅的解決方案。 建議?

你為什么不把它建模成圖形?

class Node {
    private String name;
    // TODO: Write your getters / setters.
}

class Edge {
    private Edge source, destination;
    // TODO: Write your getters / setters.
}

List<Node> nodes = new ArrayList<Node>();
List<Edge> edges = new ArrayList<Edge>();

然后,如果您遇到關系,您可以執行以下操作:

Node alice = new Node("Alice Kentucky");
if (!nodes.contains(alice)) { nodes.add(alice); }
edges.add(new Edge(bob, alice)); // where Bob is already in the node list

暫無
暫無

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

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