predicate 相关问题

谓词是一种表示一组标准的方法,如果满足这些标准,则决定给定对象。在计算机语言中,Predicate表示为一个函数,它将单个对象作为输入参数并返回一个布尔值。

追加 QueryDSL 谓词或基于过滤器值构建谓词

我是 Querydsl 的新手,我正在寻找一种基于过滤器附加/构建谓词的方法。您可以在示例中看到,如果过滤器中的某个字段没有值,则不应输入该字段

回答 1 投票 0

JAVA Predicate test() 方法不会根据精确匹配返回 true/false

我想知道 Predicate 类的 test() 方法是如何工作的?我预计下面的结果是 false,但实际结果是 true。谁能解释一下为什么吗?如果我...

回答 1 投票 0

如何对枚举成员进行分组但保持匹配详尽性检查

在 Rust 中,有没有一种方法可以对枚举成员进行“分组”,以便我可以获得谓词函数并在匹配语句中使用该谓词? 假设我有这个枚举: 枚举数{ 一, ...

回答 2 投票 0

Rust 组枚举成员,但保持匹配详尽性检查

在 Rust 中,有没有一种方法可以对枚举成员进行“分组”,以便我可以获得谓词函数并在匹配语句中使用该谓词? 假设我有这个枚举: 枚举数{ 一, ...

回答 1 投票 0

lisp 过滤掉列表中不匹配谓词的结果

我正在尝试使用 emacs 方言学习 lisp,我有一个问题。 假设列表有一些成员,其谓词评估为 false。如果没有这些成员,如何创建新列表?

回答 8 投票 0

如何为 SwiftData @Query 创建“ENDSWITH”谓词?

我可以很好地创建各种谓词,但我不确定可以使用什么来实现“ENDSWITH”? 扩展过滤器 { var 谓词:谓词? { 切换设置...

回答 1 投票 0

在java中使用函数式接口

我有 ProductSettings 和 ProductType。产品设置决定是否启用产品类型。 产品设置 产品设置 = new 产品设置() .setIsTreasuryInfoEn...

回答 1 投票 0

如何使用带有 Predicate 参数的方法,而不使用 lambda 表达式

我正在做一个邮局存储练习,其中部分方法使用另一个方法searchBoxes,其参数是谓词。我必须使用 searchBoxes 来实现这些方法,b...

回答 1 投票 0

如何匹配 XPath (lxml) 中元素的内容?

我想使用 XPath 表达式通过 lxml 解析 HTML。我的问题是匹配标签的内容: 例如给定 示例 元素我可以...

回答 2 投票 0

Arraylist 上的谓词

我有两个数组列表,如下结构: 数组列表 A :: {名称:名称1, 号码:1234 }, {名称:名称2, 号码:4567 }, {名称:名称3, 号码:6789 } 数组列表 B :: {数量:1234, 用户我...

回答 2 投票 0

定义 Typescript 类型谓词的最佳方法是什么,这些谓词在用于过滤数组时会产生最窄的类型?

我想我已经找到了定义谓词的最佳方法: 声明函数 isNumber(x: T): x 是 Extract; 声明函数 isFunction(x: T): x 是 Extract 我认为我已经找到了定义谓词的最佳方法: declare function isNumber<T>(x: T): x is Extract<T, number>; declare function isFunction<T>(x: T): x is Extract<T, Function>; ... and so on 这种方法在用于过滤数组时会产生很好的缩小类型,例如: type Handler = () => void; declare const a: (number|string)[]; declare const b: string[]; declare const c: (Handler|null)[]; const a1 = a.filter(isNumber); // number[] 👍 const b1 = b.filter(isNumber); // never[] 👍 const c1 = c.filter(isFunction); // Handler[] 👍 不幸的是,unknown和any会导致令人惊讶的行为: declare const d: any[]; declare const e: unknown[]; const d1 = d.filter(isNumber); // any[] 😩 want number[] const e1 = e.filter(isNumber); // never[] 😩 want number[] 所以这毕竟不是最好的方法!然而,即使是 Typescript 手册中定义谓词的方法在用于过滤时也会表现得“奇怪”: declare function isNumber2(x: any): x is number; declare function isFunction2(x: any): x is Function; const a2 = a.filter(isNumber2); // number[] 👍 const b2 = b.filter(isNumber2); // string[] 🤯 want never[] const c2 = c.filter(isFunction2); // (Handler|null)[] 🤯 want Handler[] const d2 = d.filter(isNumber2); // number[] 👍 const e2 = e.filter(isNumber2); // number[] 👍 游乐场 我花了很长时间尝试各种方法,例如重载、通用参数约束等,以使其适用于所有上述情况,但一无所获。有没有一种方法可以定义谓词,在过滤时可以很好地缩小数组范围? (抱歉,我知道“很好”是主观的。通常它是最狭窄的预期类型。)或者我只需要选择一种可以容忍的方法?还在寻找指导,因为我目前正在学习 Typescript,所以我完全走在错误的道路上。 我认为你可以使用泛型和条件类型断言来实现你想要的。 declare function isNumber<T>(value: T): value is T extends number ? T : never; declare function isFunction<T>(value: T): value is T extends Function ? T : never; 上面给出了我在每个示例中所期望的输出。

回答 1 投票 0

如何向 JS Array.includes() 提供 equals/hash 函数? [重复]

有没有办法通过提供 equals+hash 谓词让 Array.prototype.includes() 也可以处理非原始对象? 例如给定一个列表: var 列表 = [{id:111},{id:222},{id:333}]; 合作...

回答 1 投票 0

common lisp 函数中后缀“p”是什么意思?

参见示例:https://github.com/vindarel/cl-str#empty-emptyp-s 或者这个:https://stackoverflow.com/a/33379360/12400477 我在好几个地方都看到过这个,不知道什么意思。难道……

回答 5 投票 0

谓词构建器选择所有替代方案

我正在为应用程序创建过滤器,对同一窗口有两种方法,第一种方法是当我传递代码并用它获取所有记录时,第二种方法是当代码为 N 时我需要获取所有记录...

回答 1 投票 0

Swift #谓词在参数上使用函数

是否可以使用#Predicate,其表达式的一部分调用函数(尝试将该谓词传递到 SwiftData 查询): func myPredicate(年: Int, 月: Int) -> Predicate 是否可以使用#Predicate,其表达式的一部分调用函数(尝试将该谓词传递到SwiftData Query): func myPredicate(year: Int, month: Int) -> Predicate<MyObj> { #Predicate<MyObj> { obj in let components = Calendar.current.dateComponents([.year, .month], from: obj.date)) return components.year == year && components.month == month } } 在这种情况下,我收到一个错误:Predicate body may only contain one expression。我尝试将其移动到另一个静态函数,如下所示: extension MyObj { static func checkDate(date: Date, year: Int, month: Month) { let components = Calendar.current.dateComponents([.year, .month], from: obj.date)) return components.year == year && components.month == month } } 但现在我得到了The checkDate function is not supported in this predicate 除了将日期存储为单独的年份和月份字段之外,还有其他方法吗? 谢谢 您不能从谓词调用函数,文档中有您可以使用哪些操作的列表 您可以根据给定参数计算日期间隔,然后在谓词中使用这些日期值 static func predicate(year: Int, month: Int) -> Predicate<MyObj> { let minDate = Calendar.current.date(from: DateComponents(year: year, month: month))! let maxDate = Calendar.current.date(byAdding: .month, value: 1, to: minDate)! return #Predicate<MyObj> { object in object.date >= minDate && object.date < maxDate } }

回答 1 投票 0

在 MongoDB Singleton 中创建使用 linq 进行查询的函数

我正在创建一个单例类来查询 .Net 6 Web api 中的 mongo 集合。由于我的应用程序将查询 3 个不同数据库中的多个不同集合,因此我正在创建一个函数

回答 1 投票 0

具有多对多关系的 SwiftData 谓词

我正在构建一个照片管理应用程序,它使用标签来帮助过滤图像。我决定使用 SwiftData,因为它使通过 CloudKit 同步图像变得非常容易。但是,我在获取照片时遇到了麻烦...

回答 1 投票 0

为什么谓词模板参数推理在某些情况下有效,但在其他情况下无效?

我有一个类,其成员函数以“谓词”类型为模板。直到最近,MSVC 编译器接受了以下代码,但现在它说无法推断模板 ar...

回答 1 投票 0

正整数和负整数的 Prolog 谓词

我目前正在准备 Prolog 考试,因此我正在尝试做一些示例问题来做好准备。我已经尝试这个有一段时间了,它的任务是创建 intgr/1 以便 ?-intgr(X)。 X=0; X...

回答 1 投票 0

TypeScript:使用字符串/字符串和字符串/谓词映射中的字符串和谓词填充映射

我有一个字符串到字符串的映射: const strToStr = 新地图([ ['富','富'], ['酒吧','qux'], ]); 我还有一个字符串到接受字符串的谓词函数的映射:

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.