Java中如何去除List中的重复的值
1个回答
展开全部
public class Test {
public static void main(String[] args) {
ArrayList<String> arr = new ArrayList<String>();
arr.add("aaa");
arr.add("bbb");
arr.add("bbb");
arr.add("aaa");
arr.add("ccc");
arr.add("ccc");
List<String> newList = getNewList(arr);
System.out.println(newList);
// getlist(arr);
}
public static List <String> getNewList(List<String> li){
List<String> list = new ArrayList<String>();//创建新的list
for(int i=0; i<li.size(); i++){
String str = li.get(i); //获取传入集合对象的每一个元素
if(!list.contains(str)){ //查看新集合中是否有指定的元素,如果没有则加入
list.add(str);
}
}
return list; //返回集合
}
public static void getlist(List<String> arr) {
ArrayList<String> result = new ArrayList<String>();
for (Object s : arr) {
if (Collections.frequency(result, s)<1)
result.add((String) s);
}
System.out.println(result);
}
}
针对方法getList的小说明:
frequency(Collection, Object) 方法用于获取所指定元素集合collection等于指定对象object中的数量。
if (Collections.frequency(result, s)<1)
result.add((String) s);
的意思是如果对象s在集合result中出现的次数小于1(无s元素),就将它添加进入集合result;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询