我有一个包含字符串的ArrayList:
ArrayList<String> strList = new ArrayList<String>();
strList.addAll(Arrays.asList("interface", "list", "Primitive", "class", "primitive", "List", "Interface", "lIst", "Primitive"));
我已经编写了一个方法来删除arraylist中的大小写不敏感的字符串:
public static ArrayList<String> removeDuplicates(ArrayList<String> strList) {
for(int i = 0; i < strList.size(); i++) {
for(int j = i + 1; j < strList.size(); j++) {
if(strList.get(i).equalsIgnoreCase(strList.get(j))){
strList.remove(j);
j--;
}
}
}
return strList;
}
输出:
[interface, list, Primitive, class]
然而,我正在尝试仅删除字符串的第一个出现。我正在努力使我的输出等于:
[Interface, lIst, Primitive, class]
这是关于ArrayList中重复元素的最后出现位置的问题。
具体来说,我想要做的是:
留下的字符串版本应该与最后一次出现的相同。换句话说,最后一次出现的版本应该保留在第一次出现的位置。