Java社交网络节点采集解决方案

标签 java collections social-networking

对于 Java 来说有些陌生。我之前已经非常成功地使用过各种 Java 集合(treeset、hashmap、arraylist)。我的问题类似于类似 Facebook 的网络。我在成员(member)组织中有各种用户,我想为我们成员(member)中的每个人存储通过兴趣链接到该成员(member)的其他成员(member)的集合。我认为最简单的解决方案是按名称为每个链接有其他成员名称(现有的或新的)的成员动态分配一个新的简单集合,但 Java 似乎不允许动态分配新集合。

我可以在 HashMap 中有一个串联字符串,列出与键名称关联的所有名称,但这似乎是一个笨拙的解决方案。我认为这是一个类似社会公共(public)网络的问题,有一个优雅的解决方案。建议?

最佳答案

为什么不将其建模为图表?

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

关于Java社交网络节点采集解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14885090/

相关文章:

node.js - db.collectionNames 在 Node.js 中不起作用

social-networking - 创建一个由不同品种的 NetLogo 代理链接组成的社交网络

javascript - 需要一个快速的 jquery 解决方案来捕获当前 url 并将其注入(inject)另一个 url 链接

java - 解析tcpdump捕获的HTTP响应-entity为null,但header后有数据

java - ImageView 找不到图片网址

java - 代码通过其接口(interface)类型(例如 Set)而不是其实现类型来引用 Collection

java - 删除映射中重复的键值对,且值位于列表中

java - 我如何在我在java应用程序中创建的Neo4j Web管理中查看索引及其节点?

java - 如何动态地向 GWT UiBinder 中的 HTML 元素添加类?

html - Bootstrap 社交分享按钮