⑴ java對List去重並排序,如何快速地去掉兩個
Java8開始,對數值,集昌並廳合等提供了Stream流操作,可以方便的對集合進行操作.
比如 篩選,過濾,去重, 映射, 排序,規約,收集 等操作
簡單的參考代碼如下
importjava.util.Arrays;
importjava.util.List;
importjava.util.stream.Collectors;
//使用Java8的Stream特性和Java8的Lambda語句
publicclassDemo{
publicstaticvoidmain(String[]args){
//需求:集合去重,排序,得到一個新集耐隱合裡面的元素是之前元素的平方
List<Integer>list=Arrays.asList(5,2,2,1,3,4);
List<Integer>listResult= list
.stream()//得到流
.distinct()//去重蔽爛5,2,1,3,4
.sorted()//自然排序,也可以自定義排序規則1,2,3,4,5
.map(x->x*x)//每個元素求平方1,4,9,16,25
.collect(Collectors.toList());//收集並返回
System.out.println(listResult);//1,4,9,16,25
}
}
⑵ Java如何去掉List<實體> 實體里的重復數據
假設原數據:
Listuserlist....
方法1(也是我比較常用的):
新建一個List,遍歷原list,加入新的list
Listnewlist=newArrayList();
for(v:userlist){
if(!newlist.contains(v))
newlist.add(v);
}
...
方法2:利用set集合
Setset=newHashSet();
Listnewlist=newArrayList();
for(v:userlist){
if(set.add(v)){
newlist.add(v);
}
}
!!!
網路真心坑啊,2015年的問題竟然也能拿出來讓回答!
⑶ java中如何去掉list中重復的對象
import java.util.ArrayList;
import java.util.List;
public class Ldc001{
public static void main(String[] args){
List<String> list = new ArrayList<String>();
List<String> list2 = new ArrayList<String>();
list.add("重");
list.add("復");
list.add("的");
list.add("值");
list.add("值");
list.add("值");
list.add("去");
list.add("除");
list.add("重");
list.add("復");
list.add("的");
list.add("值");
list.add("值");
list.add("值");
list.add("去");
list.add("除");
for (int i=0;i<list.size();i++){
if(!list2.contains(list.get(i))) list2.add(list.get(i));
}
System.out.println(list2);//去隊重復後
}
}
⑷ 在JAVA中,兩個List,要從第一個List中去除所有第二個List中與之重復的元素
java中,list是可以重復的,但是set就不能重復了。
在java中,list成為列表,而set則是集合,集合中的元素是不可以重復的,但是列表中的是可以的,所以,list裡面的元素是可以重復的。
⑸ Java中如何去除List中的重復的值
屬性是????
先給你一個看看是不是你需要的好了,
//利用Set的特性,將所有項目放入Set
//中即可移除重復的項目
Set<String>stringSet=newHashSet<String>();
for(Stringelement:plicateArray){
stringSet.add(element);
}
//Set.size()為不重復項目的個數
StringnonDuplicateArray[]=newString[stringSet.size()];
//將Set中的項目取出放到nonDuplicateArray中
Object[]tempArray=stringSet.toArray();
for(inti=0;i<tempArray.length;i++){
nonDuplicateArray[i]=(String)tempArray[i];
}