第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

使用 java 流根據(jù)特定檢查更新對象

使用 java 流根據(jù)特定檢查更新對象

縹緲止盈 2023-06-28 16:11:39
testAList我有一個class對象列表TestA。我正在試驗 Java 流,我想要實現(xiàn)的是更新String b滿足檢查的列表中所有對象的屬性。class TestA {    private String a;    private String b;}到目前為止,我使用流所取得的成果如下:if(testAList!=null) { testAList.forEach(testA -> {    if(testA.getA().equals("STREAMS") {       testA.setB("JUST_TEST");    } });}我非常確定可以使用某些謂詞以更好的方式重寫此檢查,但無法找到正確的匹配項。我看到了filter,但不認為它可以使用,因為我想要完整的源代碼testAList(但在對象內(nèi)部有一些更新)。任何提示就足夠了:)
查看完整描述

1 回答

?
慕哥6287543

TA貢獻1831條經(jīng)驗 獲得超10個贊

如果你真的必須這樣做,你可以這樣做:


testAList.stream()

         .filter(testA -> "STREAMS".equals(testA.getA()))

         .forEach(a -> a.setB("JUST_TEST"))

         ;

作為練習,您還可以創(chuàng)建一個“isStreams”方法:


boolean isStreams(TestA a) {

    return "STREAMS".equals(a.getA());

}


//later

if(testAList!=null) {

    testAList.stream().filter(this::isStreams).forEach(a -> a.setB("JUST_TEST"));

}

更進一步:


void setBToJustTest(TestA a) {

    a.setB("JUST_TEST");

}


//later

testAList.stream().filter(this::isStreams).forEach(this::setBToJustTest);

這將“整齊地”從流表達式中去掉所有的細節(jié)。


除了“this”之外,您還可以在助手上靜態(tài)聲明它們并通過方法引用進行訪問,例如:TestAHelper::isStreams


查看完整回答
反對 回復 2023-06-28
  • 1 回答
  • 0 關注
  • 149 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號