国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

java - Frage zum Quellcode der JDK8-Pr?dikatfunktionsschnittstelle (Pr?dikat)?
迷茫
迷茫 2017-06-23 09:14:14
0
4
1052

Es gibt eine and() Methode in der Funktionsschnittstelle, der Quellcode lautet wie folgt

default Predicate<T> and(Predicate<? super T> other) {
    Objects.requireNonNull(other);
    return (t) -> test(t) && other.test(t);                        
}

Darüber hinaus test()Der Quellcode lautet wie folgt

boolean test(T t);

Die Frage ist, warum &&booleanLogische Operationen an Typwerten ein Pr?dikatobjekt zurückgeben k?nnen? ? ?

迷茫
迷茫

業(yè)精于勤,荒于嬉;行成于思,毀于隨。

Antworte allen(4)
滿天的星座

我不知道什么叫謂詞對(duì)象,但 test(t) && other.test(t) 這就是一個(gè)普通的 boolean 表達(dá)式,返回的就是一個(gè) boolean 的值,不是什么 “謂詞對(duì)象”。整條 return 語(yǔ)句實(shí)際上是下面語(yǔ)句的簡(jiǎn)寫(xiě):

return (t) -> {
    return test(t) && other.test(t);
};
給我你的懷抱

返回的不是boolean, 而是(t) -> { return true|false; }, 表示返回一個(gè)functional interface, 這個(gè)functional interface是什么根據(jù)上下文確定, 只要是接受參數(shù)是1個(gè)并且返回值是bool都可以, 在Predicate中就是functional interface自己, 因?yàn)榉椒ㄒ?guī)定了返回值是Predicate.

某草草

@捏造的信仰 和 @YaTou 都說(shuō)了,返回的是一個(gè) Lambda,符合 Predicate<T> 的定義。

我只想說(shuō),Predicate 為什么會(huì)翻譯成“謂詞”,雖然它有“謂語(yǔ)”這個(gè)意思,但是在這里用的是它的另一個(gè)意思“斷言,斷定(自然語(yǔ)言中用斷定比較好懂,但開(kāi)發(fā)技術(shù)書(shū)一般稱(chēng)為斷言)”,用于判斷某個(gè)東西,得到 true 或 false 的結(jié)果——也就是斷定為真,或斷定為假

三叔

確實(shí)源碼是沒(méi)有問(wèn)題的,是我自己現(xiàn)在入為主了,將 (t) -> test(t)當(dāng)做一個(gè)整體了,其實(shí)應(yīng)該 test(t) && other.test(t)是一個(gè)整體,謝謝 @捏造的信仰 和 @YaTou 的回答以及邊城大大的提醒

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage