亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從 Set Java 8 中刪除元素

從 Set Java 8 中刪除元素

慕標5832272 2022-09-07 21:35:27
static final List<String> allowedType = asList(type1,type2);Set<String> set1 = serviceClass.getType()                               .stream()                               .filter(type -> allowedType.contains(type))                               .collect(toSet());該要求由兩部分組成,第1部分。如果從 serviceClass 接收的類型具有 allowedType 中提到的任何服務類型,請將其添加到 set1。第2部分。完成上述操作后,我需要檢查set1是否包含這兩種類型,如果是,則需要刪除一種類型。Part1很簡單,截至目前,我已經使用part2實現了part2if (set1.contains("type1" && set1.contains("typep2") {    set1.remove("type");}有沒有第1部分和第2部分可以杵化成一個單一的操作?謝謝
查看完整描述

1 回答

?
呼如林

TA貢獻1798條經驗 獲得超3個贊

如果總是有兩種類型,并且您始終可以最多保留其中一種,則可以使用:limit

    Set<String> set1 = serviceClass.getType()
           .stream()
           .filter(type -> allowedType.contains(type))
           .limit(1)
           .collect(toSet());

limit(1)如果至少有一個元素通過過濾器,將返回 1 個元素的流,否則為空流。在我看來,這將為您提供您所要求的(未經測試)。


查看完整回答
反對 回復 2022-09-07
  • 1 回答
  • 0 關注
  • 222 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號