【问题标题】:How to store this lists and compare them Java advice?如何存储此列表并比较它们 Java 建议?
【发布时间】:2012-12-17 13:59:45
【问题描述】:

您能否就这个问题给我一些建议:

我有两个类型的标题列表:

 - title1______title1 
 - title1a___title2
 - title1c___title3 
 - title1b___title4
 - title2______title3
 - title4
 - title5

并且第一个列表必须附加一个文件名列表。 如何存储这两个列表以便比较它们?

目前我已将两个列表存储为 ArrayList,并将它们与第一个列表上应用的 removeAll 进行比较。

如何存储第一个列表,以便它与每个标题的文件名具有请求的连接,并且仍然能够将它与第二个列表进行比较?

【问题讨论】:

    标签: java string list multidimensional-array storing-information


    【解决方案1】:

    您可以为此使用地图:

    Map<String, String> titles = new HashMap<String, String>();
    titles.put("title1", "filename1");
    titles.put("title1a", "filename1a");
    ...
    titles.put("title5", "filename5");
    

    基本上,您可以使用titles.keySet() 方法获取所有标题的集合。 如果您需要使用列表删除某些标题,您可以按照以下方式操作:

    List<String> titlesToRemove = Arrays.toList("title1", "title2", "title3");
    titles.keySet().removeAll(titlesToRemove);
    

    但是您必须小心从keySet 中直接删除值,因为某些地图可能不支持它。可能你最好迭代 titlesToRemove 中的所有值,并在地图上使用 remove 方法删除每个值。

    【讨论】:

      猜你喜欢
      • 2020-01-15
      • 1970-01-01
      • 2020-08-10
      • 2011-02-06
      • 2014-08-01
      • 2016-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多