导航:首页 > 净水问答 > javalist过滤到多个集合

javalist过滤到多个集合

发布时间:2022-07-04 06:41:43

① java中如何返回多个list

方法一、将多个List封装到一个JavaBean内:

private static void show1() {
StringEQTest.ListArr listArr = new StringEQTest.ListArr();

List<String> names = listArr.names;
for (int i = 0; i < names.size(); i++) {
System.out.println(names.get(i));
}

List<Integer> ages = listArr.ages;
for (int i = 0; i < ages.size(); i++) {
System.out.println(ages.get(i));
}
}

public static class ListArr {
List<String> names = new ArrayList<String>();

List<Integer> ages = new ArrayList<Integer>();

public ListArr() {
names.add("names1");
names.add("names2");
names.add("names3");

ages.add(50);
ages.add(40);
ages.add(30);
ages.add(88);
}

public List<String> getNames() {
return names;
}

public void setNames(List<String> names) {
this.names = names;
}

public List<Integer> getAges() {
return ages;
}

public void setAges(List<Integer> ages) {
this.ages = ages;
}
}
结果:
names1
names2
names3
50
40
30
88

-------------------------------------------------------------------------------
方法二、将List包装到Map集合内,取出的时候需要进行类型转换
private static void show2() {
Map<String, Object> lists = getLists();
List<String> names = (List<String>) lists.get("names");
for (int i = 0; i < names.size(); i++) {
System.out.println(names.get(i));
}
List<Integer> ages = (List<Integer>) lists.get("ages");
for (int i = 0; i < ages.size(); i++) {
System.out.println(ages.get(i));
}
}

public static Map<String, Object> getLists() {
List<String> names = new ArrayList<String>();

List<Integer> ages = new ArrayList<Integer>();

names.add("names1");
names.add("names2");
names.add("names3");

ages.add(50);
ages.add(40);
ages.add(30);
ages.add(88);

Map<String, Object> map = new HashMap<String, Object>();

map.put("names", names);
map.put("ages", ages);

return map;
}
结果:
names1
names2
names3
50
40
30
88

② 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中的内容添加到另一个list中

在JAVA中,想要把一个list中的内容添加至另一个list中,有两种方法:

  1. 采用循环的方法。通过循环第一个ArrayList,然后通过每循环一次的方式,将值赋值给另一个ArrayList。具体代码实现如下:

2.集合是Java API所提供的一系列类,可以用于动态存放多个对象。集合与数组的不同在于,集合是大小可变的序列,而且元素类型可以不受限定,只要是引用类型。集合中不能放基本数据类型,但可以放基本数据类型的包装类。 集合类全部支持泛型,是一种数据安全的用法。java列表是集合的一种,并且列表中的元素是有序的,且允许重复。java列表又称为java list。

④ 在JAVA中,两个List,要从第一个List中去除所有第二个List中与之重复的元素

将List2转为Map,Employee属性作为key,对象为value,循环list1判断key是否在Map中 有就移除

⑤ java中操作多个List

import java.util.ArrayList;

import java.util.Iterator;

import java.util.LinkedList;

import java.util.List;

import java.util.ListIterator;

import java.util.Stack;

import java.util.Vector;

public class Lession6 {

public static void main(String[] args)
{

// 下面是List里面常用的实现类

// 大小可变列表的实现,允许任何数据加入

ArrayList arrayList = new
ArrayList();

// 同样是大小可变列表的实现.

//
与ArrayList的最大区别就是这个类的方法是同步(synchronized)的

// 详细的区别,请参考

// 看源代码理解ArrayList和Vector 的真正区别

// http://www.java2000.net/p9750

Vector vector = new Vector();

// 实现了双向队列的控制,包括头尾的操作

// 可用于堆栈和FIFO操作等

LinkedList linkedList = new
LinkedList();

// 集成自 Vector

// 提供了LIFO的堆栈操作方式

Stack stack = new Stack();

// -----------------

// 下面以ArrayList作为例子,看看列表的各个方法

List list = new ArrayList();

// 构建第二个列表

List list2 = new ArrayList();

// 向列表的尾部添加指定的数据

list.add(123);

// 在列表的指定位置插入指定数据

// 我们在最前面插入数据

// 列表的位置索引从0开始

list.add(0, 456);

// 将list2里面的数据,全部放到list1的尾部去

// 注意此处可以是任何集合类,不限于列表

list.addAll(list2);

// 将list2里面的数据,全部放到list1指定位置的后面

// 等于插入一段数据

list.addAll(2, list2);

// 清空列表,删除里面所有的数据

list.clear();

// 判断列表里是否包含某个数据

boolean found = list.contains(123);

// 判断列表是否包含了另一个集合的所有数据

// 注意此处可以是任何集合类,不限于列表

boolean ok =
list.containsAll(list2);

// 获得指定位置的数据

// 如果位置超过了列表的范围 0 到 list.size()-1

// 则抛出异常:IndexOutOfBoundsException

Object obj = list.get(3);

// 得到数据在列表中的位置

// 如果没找到,返回-1

// 位置索引从0开始

int index = list.indexOf(456);

// 判断列表是不是空的

boolean empty = list.isEmpty();

// 列表的迭代器操作

// 顺序严格按照列表的保存的顺序

Iterator it = list.iterator();

// 得到数据在列表最后一次出现的位置

// 适合于有重复数据的列表

index = list.lastIndexOf(456);

// 列表的另一个迭代器

ListIterator listIT =
list.listIterator();

// 列表的另一个迭代器,可以指定起始位置

ListIterator listIT2 =
list.listIterator(3);

// 删除某个位置的数据

list.remove(3);

// 删除指定对象的第一个出现的位置

// 注意,如果是整数,要区分其与remove(int)的区别

// 建议用 remove(new Integer(123));
来删除数据对象

list.remove(new Integer(123));

// 删除列表里在另一个集合里存在的数据

list.removeAll(list2);

// 只保留在另一个集合里存在的数据,等于交集

list.retainAll(list2);

// 替换指定位置的数据

list.set(3, 999);

// 列表数据的数量

int size = list.size();

// 得到一个子数组

List subList = list.subList(2, 10);

// 将集合转化为数组

Object[] objs = list.toArray();

// 将集合转化为指定格式的数组

// 比如集合里保存的都是String

String[] objs2 = (String[])
list.toArray(new String[0]);

}

}

⑥ java中怎么把一个集合分成多个集合

List list1 = new ArrayList(); list1.add("a");list1.add("b"); List list2 = Arrays.asList("c","d"); list1.addAll(list2); System.out.println(list1);

⑦ Java List集合

有两种办法,一种是加上 public 标签,把你的 names 变成公共的!
第二种办法是加上 get 方法!
如: public ArrayList getNames (){
return names;
}

返回names的值!
JavaBean 的正规写法,当然是第二种的,第一种没有安全性可言,不要用!

⑧ java 从几十万条数据的list集合中随机取出1000个元素重新生成集合

List<String> list = new ArrayList<String>();
List<String> new_list = new ArrayList<String>();
for (int i = 0 ; i < 1200000;i++)
{
list.add(i+"");
}
long time1 = System.currentTimeMillis();
Collections.shuffle(list);
new_list = list.subList(0,1000);//方法1耗时65~130
new_list = createRandomList(list,1000);//方法2耗时2~5
long time2 = System.currentTimeMillis();
System.out.println(time2 - time1);

private static List createRandomList(List list, int n)
{
Map map = new HashMap();
List listNew = new ArrayList();
if (list.size() <= n)
{
return list;
}
else
{
while (map.size() < n)
{
int random = (int) (Math.random() * list.size());
if (!map.containsKey(random))
{
map.put(random, "");
listNew.add(list.get(random));
}
}
return listNew;
}
}

这个方法测试

⑨ Java两个List的过滤问题

packagetest;

importjava.util.ArrayList;
importjava.util.List;

publicclassA1
{
publicstaticvoidmain(String[]args)
{
<String>list1=newArrayList<String>();
list1.add("JSON--B--TEST");
list1.add("JSON--A--TEST");//deletethisitem
list1.add("JSON--C--TEST");
List<String>list2=newArrayList<String>();
list2.add("B");
list2.add("C");
Stringtemp=list2.toString().replaceAll("[\[\]\s]","").replaceAll("\,","|");
System.out.println(temp);
Stringreg="^.*("+temp+").*$";
for(inti=0;i<list1.size();i++)
{
if(!list1.get(i).matches(reg))
{
list1.remove(i);
}
}
System.out.println(list1.toString());
}
}

⑩ JAVA怎么取多个List集合的交集

1、把多个list放到一个list中,生成 List<List<Object>>结构
2、遍历list,使用java8的规约操作,两两求交集
list.stream().rece((list1,list2) -> { list1.retainAll(list2); return list1;}).orElse(emptyList());

阅读全文

与javalist过滤到多个集合相关的资料

热点内容
液相用溶剂过滤器 浏览:674
纳滤水导电率 浏览:128
反渗透每小时2吨 浏览:162
做一个纯净水工厂需要多少钱 浏览:381
最终幻想4回忆技能有什么用 浏览:487
污水提升器采通 浏览:397
反渗透和不发渗透净水器有什么区别 浏览:757
提升泵的扬程 浏览:294
泽德提升泵合肥经销商 浏览:929
饮水机后盖漏水了怎么办 浏览:953
小型电动提升器 浏览:246
半透膜和细胞膜区别 浏览:187
废水拖把池 浏览:859
十四五期间城镇污水处理如何提质增效 浏览:915
怎么测试空气净化器的好坏 浏览:519
提升泵是干嘛的 浏览:744
布油做蒸馏起沫咋办 浏览:252
广州工业油烟净化器一般多少钱 浏览:204
喜哆哆空气净化器效果怎么样 浏览:424
油烟净化器油盒在什么位置 浏览:582