你能不能对这个问题给我一些关注:
我有两个类型的标题列表:
- title1______title1
- title1a___title2
- title1c___title3
- title1b___title4
- title2______title3
- title4
- title5
并且第一个列表必须附加一个文件名列表。 如何存储这两个列表以便我可以比较它们?
目前我已将两个列表存储为ArrayList,我将它们与第一个列表中应用的removeAll进行比较。
如何存储第一个列表,使其与每个标题的文件名具有请求的连接,并且仍然能够将其与第二个列表进行比较?
答案 0 :(得分: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
方法删除每个值。