導航:首頁 > 編程語言 > java集合刪除重復元素

java集合刪除重復元素

發布時間:2024-07-11 08:08:50

java中怎麼找出數組中重復的數並去除

java中找出數組中重復的數並去除的代碼如下:

publicstaticvoidtestA(){
String[]str={"Java","C++","Php","C#","Python","C++","Java"};
for(StringelementA:str){
System.out.print(elementA+"");
}
List<String>list=newArrayList<String>();
for(inti=0;i<str.length;i++){
if(!list.contains(str[i])){
list.add(str[i]);
}
}
System.out.println();
String[]newStr=list.toArray(newString[1]);//返回一個包含所有對象的指定類型的數組
for(StringelementB:newStr){
System.out.print(elementB+"");
}
System.out.println();
}

❷ JAVA中,如何去掉LIST里的重復元素

最好的辦法是用Set,因為Set裡面存放的數據是不重復的。
如果你不想用Set,那還可以向下面這樣處理。

List list_tmp = new ArrayList(); //建立一個用於臨時存放不重復list元素的List集合。
for(Object obj:list){
//可以根據需要,在這里加上強制轉型。
//如list裡面存放的是一個User對象,那麼加上User u = (User) obj;
if(!list_tmp.contains(obj)){ //注意contains方法是通過equals方法進行比較的所以你要根據你自己的需要看是否需要重寫list對象裡面的equals方法。
list_tmp.add(obj);//如果上面加了強制轉型,這里需要寫list_tmp.add(u);
}
}

❸ Java數組中重復數據的刪除

java數組中去掉重復數據可以使用set集合,set本身內部是不保存重復的數據的,如下代碼:

importjava.util.Arrays;
importjava.util.Set;
importjava.util.TreeSet;

publicclassceshi{
publicstaticvoidmain(String[]args){

int[]testArr={5,5,1,2,3,6,-7,8,6,45,5};//新建一個int類型數組
System.out.println(Arrays.toString(testArr));
Set<Integer>set=newTreeSet<Integer>();//新建一個set集合
for(inti:testArr){
set.add(i);
}
Integer[]arr2=set.toArray(newInteger[0]);
//數組的包裝類型不能轉只能自己轉;吧Integer轉為為int數組;
int[]result=newint[arr2.length];
for(inti=0;i<result.length;i++){
result[i]=arr2[i];
}
System.out.println(Arrays.toString(arr2));
}
}

運行結果如下:

❹ java中怎樣去除list中重復的數據,並且顯示重復數據的條數

很多集合處理,我都推薦用Java8的流來處理,是非常簡單易懂的

其實你這個問題,總來說就是按照集合中的字元串進行分類,並統計數量,Stream只用簡單的代碼就完成復雜的操作,代碼如下

List<String>list=Arrays.asList("day","walipo","day","walipo","legeand","day","douwbo","day","day");
Map<String,Long>collect=list.stream().collect(Collectors.groupingBy(Function.identity(),Collectors.counting()));
System.out.println(collect);


最後返回的Map就是以字元串為key,value為其個數

❺ java 刪除數組中重復元素

package com.akfucc.;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;

public class P124876743 {
public static void main(String[] args) {
int[] nums = { 1, 2, 3, 3, 3, 3, 4 };
List<Integer> numList = new ArrayList<Integer>();
for (int i : nums)
numList.add(i);
System.out.println(numList);

// 做刪除
Iterator<Integer> it = numList.iterator();
int temp = -1;
if (it.hasNext())
temp = it.next();
while (it.hasNext()) {
int i = it.next();
if (i == temp) {
it.remove();
} else {
temp = i;
}
}
System.out.println(numList);
}
}

❻ Java如何將數組中具有相同的元素都刪去

ArrayLista=newArrayList(數組);

for(inti=0;i<a.size();i++){

Objectobj=數組[i];

if(a.contains(obj)){

a.remove(i);

}

}

我答案錯了,不好意思,當初咋想的忘記了,抱歉。下面的其他匿名網友回答是正確的。另外附上我的修改。

一:利用set的唯一性解決

String[]strArr={"B","A","C","D","C","A"};
Set<String>strList=newHashSet(Arrays.asList(strArr));
System.out.println(strList.toString());

二:創建新的存儲單位,判斷是否重復後逐個增加

publicstaticvoidmain(String[]args){
String[]strArr={"B","A","C","D","C","A"};
List<String>strList=newArrayList<String>();
for(Stringstr:strArr){
if(strList.contains(str)){
continue;
}
strList.add(str);
}
System.out.println(strList.toString());
}

三:利用steam的distinct方法去重(jdk1.8的新特性)

String[]strArr={"B","A","C","D","C","A"};
List<String>strList=Arrays.asList(strArr);
strList=strList.stream().distinct().collect(Collectors.toList());
System.out.println(strList.toString());

❼ java中怎麼樣子找出數組中重復的數,並去除

  1. 使用Set集合處理即可,因為Set集合有特性,自動去除重復的元素;

  2. 只要循環數組,添加到set中就可以實現了。

閱讀全文

與java集合刪除重復元素相關的資料

熱點內容
書香門第安卓 瀏覽:395
如何分離編程數值 瀏覽:996
描述文件是幹嘛的 瀏覽:868
文件格式化恢復 瀏覽:353
v顯卡驅動程序源碼 瀏覽:44
iphone5s聲音小怎麼解決 瀏覽:656
文件名文字看不清了 瀏覽:313
電腦找不到cftmon文件 瀏覽:768
qq分組久伴酒伴久伴 瀏覽:697
文檔轉成pdf格式文件 瀏覽:621
離子數據怎麼寫 瀏覽:876
jspapijar官網下載 瀏覽:366
html調用文本文件 瀏覽:921
想學數控編程哪裡好 瀏覽:860
js獲取系統動態時間間隔 瀏覽:165
win10改win7進pe卡住 瀏覽:456
u盤中毒ink文件 瀏覽:718
蘋果換機數據遷移包含哪些數據 瀏覽:234
程式控制可編程直流電源在哪裡 瀏覽:598
容積長寬高的數據從什麼面測量 瀏覽:978

友情鏈接