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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

應(yīng)用比較器和謂詞的順序重要嗎?

應(yīng)用比較器和謂詞的順序重要嗎?

眼眸繁星 2023-02-16 17:22:57
我們有一個(gè)網(wǎng)頁(yè),用戶可以在其中選擇任意數(shù)量的規(guī)則來過濾和排序一組項(xiàng)目。對(duì)于每條規(guī)則,他都為其設(shè)置了優(yōu)先級(jí),用戶可以使用該優(yōu)先級(jí)定義規(guī)則應(yīng)如何應(yīng)用的順序。從這組規(guī)則中,我提取 Comparator(如果規(guī)則正在排序)和/或 Predicates(如果用戶想要過濾項(xiàng)目)對(duì)象。我想將它們與一系列項(xiàng)目一起使用,以便對(duì)它們進(jìn)行過濾和排序。我的問題是,應(yīng)用 Comparator 和 Predicate 對(duì)象的順序重要嗎?我知道 Comparator 對(duì)象的順序很重要,但是 Predicate 出現(xiàn)在開頭還是結(jié)尾有關(guān)系嗎?例如:We have Comparator objects: comparator1, comparator2We have Predicate objects: predicate1, predicate2Is there a difference between applying them in the following orders:- comparator1, comparator2, predicate1, predicate2- predicate1, predicate2, comparator1, comparator2- predicate1, comparator1, predicate2, comparator2- predicate2, comparator1, comparator2, predicate1Note: comparator1 always appears before comparator2. I am aware that changing their order could result in different results in terms of sorting.現(xiàn)在,我認(rèn)為上述所有情況都會(huì)導(dǎo)致相同的輸出(就排序和項(xiàng)目而言)。這將允許我先應(yīng)用所有過濾器,然后再進(jìn)行排序。但是我不確定,所以我不得不在這里問。
查看完整描述

2 回答

?
jeck貓

TA貢獻(xiàn)1909條經(jīng)驗(yàn) 獲得超7個(gè)贊

  1. 過濾在排序之前進(jìn)行。

  2. 比較器的順序很重要。Comparator#thenComparing按照用戶指定的順序查看復(fù)合比較器。

  3. 謂詞的順序無關(guān)緊要(除非它們是有狀態(tài)的或依賴于其他謂詞,必須避免這種情況)。Predicate#and以任何順序查看復(fù)合謂詞。


查看完整回答
反對(duì) 回復(fù) 2023-02-16
?
catspeake

TA貢獻(xiàn)1111條經(jīng)驗(yàn) 獲得超0個(gè)贊

如果您的謂詞是無狀態(tài)的并且不修改它們測(cè)試的對(duì)象,那么它們是關(guān)系代數(shù)方面的選擇。因此,它們的順序?qū)ψ罱K結(jié)果無關(guān)緊要。


但是,性能可能存在差異。通常建議首先應(yīng)用快速和高度選擇性的謂詞。篩選后排序也會(huì)更快。


另一方面,根據(jù)您所做的事情,這些好處可能微不足道。在這種情況下,您應(yīng)該選擇使您的代碼最容易理解和維護(hù)的順序。


查看完整回答
反對(duì) 回復(fù) 2023-02-16
  • 2 回答
  • 0 關(guān)注
  • 111 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)