亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術(shù)文章
文章詳情頁

Java Lambda List轉(zhuǎn)Map代碼實(shí)例

瀏覽:98日期:2022-09-04 11:55:51

在有些開發(fā)場景,需要對 List 對象列表進(jìn)行過濾處理,并將有用的數(shù)據(jù)存放到Map中。

例如:告警對象,包含告警uuid(alarmUuid) 和 設(shè)備uuid(objUuid),需要對 objUuid = -1的告警進(jìn)行過濾,并將過濾后告警數(shù)據(jù)的alarmUuid和 objUuid以鍵值對的形式保存到Map中。

1、告警對象定義如下:

/** * Created by Miracle Luna on 2020/3/16 */public class AlarmInfoResponse { private String alarmUuid; private String objUuid; public AlarmInfoResponse(String alarmUuid, String objUuid) { this.alarmUuid = alarmUuid; this.objUuid = objUuid; } public String getAlarmUuid() { return alarmUuid; } public void setAlarmUuid(String alarmUuid) { this.alarmUuid = alarmUuid; } public String getObjUuid() { return objUuid; } public void setObjUuid(String objUuid) { this.objUuid = objUuid; } @Override public String toString() { return 'AlarmInfoResponse{' +'alarmUuid=’' + alarmUuid + ’’’ +', objUuid=’' + objUuid + ’’’ +’}’; }}

2、過濾代碼如下:

/** * Created by Miracle Luna on 2020/3/16 */public class LambdaFilterListToMap { public static void main(String[] args) { List<AlarmInfoResponse> alarmInfoResponseList = new ArrayList<>(); AlarmInfoResponse response0 = new AlarmInfoResponse('alarm0', '-1'); AlarmInfoResponse response1 = new AlarmInfoResponse('alarm1', '1'); AlarmInfoResponse response2 = new AlarmInfoResponse('alarm2', '2'); AlarmInfoResponse response3 = new AlarmInfoResponse('alarm3', '3'); alarmInfoResponseList.add(response0); alarmInfoResponseList.add(response1); alarmInfoResponseList.add(response2); alarmInfoResponseList.add(response3); // 方式1:先使用foreach遍歷(遍歷過程中條件判斷) Map<String, String> alarmObjUuidMap1 = new HashMap<>(); alarmInfoResponseList.forEach(alarmInfoResponse -> { if(!'-1'.equals(alarmInfoResponse.getObjUuid())) {alarmObjUuidMap1.put(alarmInfoResponse.getAlarmUuid(), alarmInfoResponse.getObjUuid()); } }); System.out.println('============= 方式1 ===================='); alarmObjUuidMap1.forEach((alarmUuid, objUuid) -> System.out.println(alarmUuid + ' : ' + objUuid)); // 方式2:使用流過濾,再使用foreach遍歷 Map<String, String> alarmObjUuidMap2 = new HashMap<>(); alarmInfoResponseList.stream(). filter(alarmInfoResponse -> !'-1'.equals(alarmInfoResponse.getObjUuid())). forEach(alarmInfoResponse -> alarmObjUuidMap2.put(alarmInfoResponse.getAlarmUuid(), alarmInfoResponse.getObjUuid())); System.out.println('n============= 方式2 ===================='); alarmObjUuidMap2.forEach((alarmUuid, objUuid) -> System.out.println(alarmUuid + ' : ' + objUuid)); }}

3、運(yùn)行結(jié)果如下:

============= 方式1 ====================alarm2 : 2alarm1 : 1alarm3 : 3

============= 方式2 ====================alarm2 : 2alarm1 : 1alarm3 : 3

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 欧美精品午夜 | 久久草在线免费 | 欧美日中文字幕 | 久久狠狠色狠狠色综合 | 中文字幕有码在线观看 | 国产不卡影院 | 久久久久爽亚洲精品 | 在线观看人成网站深夜免费 | 午夜在线伦理福利视频 | 精品久久久久久久久久香蕉 | 久久精品国产6699国产精 | 欧美操操操 | 性欧美精品 | 在线播放精品一区二区啪视频 | 91精品国产手机 | 久草在线视频免费资源观看 | 精品400部自拍视频在线播放 | 欧美亚洲不卡 | 香蕉一区二区三区观 | 久久爱com | 久爱综合 | 国产亚洲欧美一区二区三区 | 91久久在线 | 日本视频在线观看不卡高清免费 | 欧美一区二区三区激情视频 | 性刺激欧美三级在线现看中文 | 亚洲欧美日韩精品久久亚洲区色播 | 日本一区二区三区四区公司 | 亚洲国产成人久久综合一区 | 欧美激情伦妇在线观看 | 国产成人免费观看 | 国产亚洲人成网站观看 | 久久精品视频日本 | 久久精品国产欧美日韩亚洲 | 美女黄色在线 | 欧美高清视频在线观看 | 亚洲精品无码专区在线播放 | 日本成aⅴ人片日本伦 | 一级毛片视频免费观看 | 久久无码精品一区二区三区 | 国产真实一区二区三区 |