导航:首页 > 编程语言 > 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相关的资料

热点内容
安卓怎么测量开机电压 浏览:775
程序员素质大全 浏览:952
激战服务器不见了怎么办 浏览:982
安卓如何退回初始系统 浏览:951
用什么手表能代替app 浏览:706
女程序员熬夜体检 浏览:716
解压故事校园恋爱又烦恼 浏览:557
冰箱压缩机放多久能启动 浏览:173
软件算法发明专利 浏览:988
旁氏算法 浏览:767
程序员那么可爱电视剧免费观看极速版 浏览:749
程序员那么可爱陆漓孩子保住了吗 浏览:566
如何获取服务器dns秒解 浏览:665
如何破解大黄蜂的加密文件 浏览:13
新概念英语第三册pdf 浏览:403
分项详细估算法步骤 浏览:438
ipad桌面文件夹放大 浏览:893
我的世界基岩版怎么进国际服务器 浏览:518
福州医院有没有解压舱 浏览:472
带pwm的51单片机 浏览:918