java - 将 MultiLabelDataset<String, String> 转换为 Guava Multimap 用于打印/检查

标签 java string apache output guava

我正在使用以下程序:

public static void main(String[] args) throws Exception
{
    String input = args[0];

    InputStream is = new BufferedInputStream( new FileInputStream( input ) );

    toMultiLabelDataset(is);
    is.close();
}

public static MultiLabelDataset<String, String> toMultiLabelDataset(InputStream is) throws IOException
{
    List<RelationAndMentions> relations = toRelations(is, true);
    MultiLabelDataset<String, String> dataset = toDataset(relations);

    return dataset;
}

正如您所看到的,它使用 MultiLabelDataset<String, String> 形式的数据结构。 ,我想以人类智能的形式打印那个野兽的内容。根据我之前的搜索,我可能可以使用 apache string utils 或 google guava 库,对吗?我该如何去做呢?

我的猜测是这些库中有一个等效的数据结构,它需要 <String, String> ,我只需要确定那是什么,复制 MultiLabelDataset<String, String> 的内容然后打印?这合理吗?

编辑

<小时/>
    Multimap<String, String> result = HashMultimap.create();
    for (String key : ((MultiLabelDataset) dataset).items) 
    {
        for (String value : dataset.getLabels()) 
        {
            result.put(key, value);
        }
    }

^不是那样的。

最佳答案

假设是这个MultiLabelDataset ,那么就类似于Guava的Multimap你可以轻松转换它。但是,这种转换既不会比直接转换为 String 更简单,也不会更智能。唯一的优点是,此后您可以使用具有许多有用方法的正常 Java 类,并且可以与其他 Java 类很好地协同工作。

整个转换过程与往常一样,但您需要一些东西来迭代键。假设唯一的实现是 LabeledLDADataset,这很简单:

Multimap<String, String> toMultimap(MultiLabelDataset<String, String> dataset) {
    Multimap<String, String> result = HashMultimap.create();
    for (Item key : ((LabeledLDADataset) dataset).items()) {
        result.putAll(key.toString(), dataset.getLabels(key));
    }
    return result;
}

关于java - 将 MultiLabelDataset<String, String> 转换为 Guava Multimap 用于打印/检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29553725/

相关文章:

javascript - else if 语句在变量分配中的效率

c++ - 有没有办法下载 Apache C++ 标准库用户指南?

java - 在 Java 中访问类中的每个成员就像在 C 中的 struct 中一样

java - 按 float 对对象的 ArrayList 进行排序

java - 求助关于AndroidManifest.xml读取问题

java - 在不丢失其监听器的情况下序列化和反序列化对象的最佳方法?

c++ - PSTR如何接收多个不以逗号分隔的字符串?

c - sscanf 循环仅多次读取第一个输入

Mac 上的 Django : Apache with mod_wsgi configuration problems

apache - .htaccess 重定向不适用于 Angular 4