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

热点内容
linux下运行jar包 浏览:435
彩虹弹弹解压球视频 浏览:83
pdf怎样转换成word格式 浏览:673
怎么查找解压文件在哪里 浏览:852
德语小说pdf 浏览:125
陕西联通dns服务器地址 浏览:939
js表格即时编译 浏览:304
51单片机串口拓展 浏览:307
重装系统后加密图片损坏 浏览:465
电脑怎么放大缩小app窗口 浏览:526
教育十APP学校怎么更改 浏览:823
空调外机压缩机热保护 浏览:756
winlinux双系统卸载 浏览:241
如何对安卓应用反编译 浏览:412
鲲鹏pc服务器是什么 浏览:575
一级防震梁箍筋加密 浏览:930
linuxxampp64位 浏览:730
西安哪个app能买到东西 浏览:459
eps命令键 浏览:40
塑料文件夹的尺寸 浏览:212