導航:首頁 > 編程語言 > java過濾list

java過濾list

發布時間:2023-11-18 07:30:24

java list的重復對象怎麼去除

java list的重復對象,可以使用Set集合類沒有重復的數據的特點,將list的數據存入set裡面,過濾掉重復的數據,如下代碼:

packagecom.qiu.lin.he;

importjava.util.ArrayList;
importjava.util.HashSet;
importjava.util.List;
importjava.util.Set;

publicclassCeshi{
publicstaticvoidmain(String[]args){
List<Integer>li=newArrayList<Integer>();//新建一個list結合
li.add(1);
li.add(2);
li.add(3);
li.add(1);
Set<Integer>se=newHashSet<Integer>();//新建一個set集合
for(Integerinteger:li){
se.add(integer);//過濾重復的數據
}
for(Integerinteger:se){
System.out.println("輸出list數組的去重的每個數據"+integer);
}
}
}

運行結果如下:

㈡ JAVA:如何刪掉list裡面重復的Map

不知道你為什麼有這種變態需求。如果是作為學習訓練還情有可原,要是你是要實現一個什麼東西不得不這樣,那你就實在是實現的太搓了。用什麼不好,用這么多map,還用list來過濾。
算我無聊,這是代碼,clearList是方法,main是給你寫的一個測試用的例子
public class Test
{
public static void clearList(List<Map<String, String>> list)
{
if (list == null) return;

Set<String> set = new HashSet<String>();
for (Iterator<Map<String, String>> it = list.iterator(); it.hasNext();)
{
//裡面的map至少有一個元素,不然報錯
String value = it.next().entrySet().iterator().next().getValue();
if (set.contains(value))
{
it.remove();
}
else
{
set.add(value);
}
}
}

public static void main(String args[])
{
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
Map<String, String> map1 = new HashMap<String, String>();
map1.put("1", "abc");
Map<String, String> map2 = new HashMap<String, String>();
map2.put("2", "abdc");
Map<String, String> map3 = new HashMap<String, String>();
map3.put("3", "abc");
list.add(map1);
list.add(map2);
list.add(map3);
clearList(list);
for (Iterator<Map<String, String>> it = list.iterator(); it.hasNext();)
{
String value = it.next().entrySet().iterator().next().getValue();
System.out.println(value);
}
}
}

㈢ java裡面如果選擇了JList的值,再按其他按鈕的時候怎麼把之前選的這個JList項清除掉

分析: 1: 清除JList選中的項目,可以使用setSelectedIndices方法實現

JList1.setSelectedIndices(newint[]{});//設置選擇的條目為沒有.用1個空白數組表示
//jlist1.setSelectedIndices(newint[]{0,1});//這就表示選擇的條目為第1和第2個

分析:2 : 可以設置1個焦點響應事件. 當JList失去焦點時,使用上面的方法,清除掉所有選擇

完整的參考代碼

importjava.awt.*;
importjava.awt.event.FocusEvent;
importjava.awt.event.FocusListener;
importjavax.swing.*;
importjavax.swing.event.*;

{
JTextFieldjtf;
JList<String>jlist1;
JTextAreajta;
staticfinalString[]CP={"青椒土豆絲","西紅柿炒雞蛋","麻辣小龍蝦","魚香肉絲","西湖醋魚","紅湯老火鍋","可樂","茉莉花茶"};

publicMenuFrame(){
JPaneljpCenter=newJPanel(newGridLayout(1,2));
jlist1=newJList<String>(CP);
jlist1.addListSelectionListener(this);
jlist1.addFocusListener(newFocusListener(){//給JList添加1個焦點響應事件

@Override
publicvoidfocusLost(FocusEvente){//失去焦點時執行的方法
jlist1.setSelectedIndices(newint[]{});//設置選擇的條目為沒有.用1個空白數組表示
//jlist1.setSelectedIndices(newint[]{0,1});//這就表示選擇的條目為第1和第2個
}

@Override
publicvoidfocusGained(FocusEvente){//獲得焦點時,執行的方法
//TODOAuto-generatedmethodstub

}
});
JScrollPanejsp1=newJScrollPane(jlist1);//滾動面板
jsp1.setBorder(BorderFactory.createTitledBorder("全部菜品"));//帶標題的邊框
jpCenter.add(jsp1);

jta=newJTextArea(5,30);
jta.setLineWrap(true);
JScrollPanejsp2=newJScrollPane(jta);
jsp2.setBorder(BorderFactory.createTitledBorder("已選菜品"));
jpCenter.add(jsp2);

add(jpCenter);
setTitle("點菜");
setSize(300,200);//窗口大小
setLocationRelativeTo(null);//窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}

publicstaticvoidmain(String[]args){
newMenuFrame();//啟動窗口
}

publicvoidvalueChanged(ListSelectionEvente){
if(e.getValueIsAdjusting()){
jta.append(jlist1.getSelectedValue()+",");
}
}
}

效果圖

㈣ 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中的指定元素

主要有三種方法:

  1. 用一個List 記錄要刪除的數據猛閉,最後removeAll(List);梁知李

㈥ java中如何將list集合清空

java中將集合清空可以用clear方法。

下面演示用法,代碼如下

public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
System.out.println(list);
list.clear();
System.out.println(list);
}

(6)java過濾list擴展閱讀,集合的方法

boolean add(Object o)添加對象到集合

boolean remove(Object o)刪除指定的對象

int size()返回當前集合中元素的數量

boolean contains(Object o)查找集合中是否有指定的對象

boolean isEmpty()判斷集合是否為空

Iterator iterator()返回一個迭代器

boolean containsAll(Collection c)查找集合中是否有集合c中的元素

boolean addAll(Collection c)將集合c中所有的元素添加給該集合

void clear()刪除集合中所有元素

void removeAll(Collection c)從集合中刪除c集合中也有的元素

void retainAll(Collection c)從集合中刪除集合c中不包含的元素

閱讀全文

與java過濾list相關的資料

熱點內容
android有道api 瀏覽:381
撓耳營水表用的什麼app 瀏覽:49
戰錘40kpdf 瀏覽:375
java判斷字元串是漢字 瀏覽:462
2017初級教材pdf 瀏覽:451
松下空調壓縮機品牌 瀏覽:817
python復選框 瀏覽:746
反詐中心app是什麼時候出來的 瀏覽:586
魔獸世界需要什麼伺服器地址 瀏覽:189
啥是單片機休眠 瀏覽:104
什麼音樂app最好 瀏覽:927
牙膏自製解壓神器 瀏覽:329
卸載linuxwps 瀏覽:228
threadjavarunnable 瀏覽:360
一元線性回歸計演算法 瀏覽:950
刷寶app是什麼鬼 瀏覽:744
linux動態載入模塊 瀏覽:25
javamd5工具類 瀏覽:76
安保嘉獎命令 瀏覽:647
bt種子能壓縮嗎 瀏覽:676