導航:首頁 > 凈水問答 > 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