草庐IT

predicates

全部标签

ios - 无法理解 fetchRequest.predicate

我有一个非常“简单”的NSFetchRequest谓词:guardletkategorie=self.fetchedResultsController.objectAtIndexPath(indexPath)as?Kategorienelse{return}letfetchRequest=NSFetchRequest(entityName:"Details")fetchRequest.predicate=NSPredicate(format:"kategorie==%i",kategorie.katid!)do{letresults=tryself.managedObjectConte

ios - Swift:使用 UISearchController/Predicates 过滤结构数组

想知道是否有人可以帮助我在Swift中使用谓词进行过滤。我有一个有点乱的数据源,我用它来填充UITableView。数据源是一个结构数组。该结构定义如下:structExercises{letcategory:Stringletname:Stringletx_seed:[Double]lety_seed:[Double]lethasMult:Bool}现在在我的TableViewController中,我持有一个结构数组,其中包含表的所有数据。classMainTableViewController:UITableViewController,UISearchResultsUpdati

swift - CoreData Predicate 获取包含数组中任何单词的每个句子

在Swift4中,我有一个CoreData“句子”模型,它有一个字符串属性“englishsentence”。我还有一个“单词”数组,想获取“englishsentence”属性包含数组中一个或多个单词的所有句子。varwords=["today","yesterday","tomorrow"]这个数组只是一个例子。它应该在运行时改变并且可以有任何长度。在获取请求中,我试图做这样的事情:letfetchRequest=NSFetchRequest(entityName:"Sentence")letpredicate=NSPredicate(format:"ANYenglishsente

python - 使用 ndb 的 GAE 错误 - BadQueryError : Cannot convert FalseNode to predicate

我有一个使用python在GoogleAppEngine上运行的应用程序。模型类扩展自ndb(google.appengine.ext.ndb)类。我的一个View对数据库进行异步调用,或多或少类似于:#ExerciseListLogisandbmodelclass#start_current,end_currentaredates#student_idisastring#contentsisalistofkeysexercise_log_query=ExerciseListLog.query(ndb.AND(ExerciseListLog.creation>=start_curren

ios - Xcode 4 中的(复合)Predicate Builder——它在哪里?

首先,这个问题与GraphicalPredicateBuilderinXcode4WithCoreData密切相关。.但是,我的评分还不够高,无法发表评论,而且由于我没有答案可以提供,我想问一个新问题,有更多具体细节.我一直在用头撞墙,所以我将提供尽可能多的细节......问题:AppleCoreData文档仍然引用Xcode3并显示高度复杂的图形predicatebuilder获取属性和获取请求模板。这包括以图形方式创建任意复杂度的复合谓词的能力,例如:这显然是一个有效使用CoreData的非常强大的工具,据我(andothers)所知,这个功能在Xcode4中要么丢失要么被隐藏起来

swift - 为什么过滤器(_ :)’s predicate get called so many times when evaluating it lazily?

我看到了ananswer至thisquestion,在它的第一个修订版中,有类似这样的代码:letnumbers=Array(0..其中,通过使用惰性过滤器集合,能够过滤numbers的前5个元素。满足给定谓词(在这种情况下,可以被3整除),而不必计算numbers中的每个元素大批。然而,答案随后评论说filter(_:)的谓词可以为每个元素多次调用(对于1...15范围内的元素调用3次,结果为0调用两次)。这个过滤器的惰性求值效率低下的原因是什么?有没有办法避免多次评估同一个元素? 最佳答案 问题这里的第一个罪魁祸首是通过使用pr

c# - 如何将 Func<T, bool> 转换为 Predicate<T>?

是的,我见过this但我找不到我的具体问题的答案。给定一个接受T并返回一个bool值的lambdatestLambda(我可以让它成为Predicate或Func,这取决于我)我需要能够同时使用List.FindIndex(testLambda)(采用谓词)和List.Where(testLambda)(采用Func)。有什么想法可以同时做到这两点吗? 最佳答案 简单:Funcfunc=x=>x.Length>5;Predicatepredicate=newPredicate(func);基本上,您可以使用任何兼容现有实例创建一个新

c# - List<object>.RemoveAll - 如何创建合适的 Predicate

这是一个有点菜鸟的问题——我对C#和泛型还是很陌生,对谓词、委托(delegate)和lambda表达式也是全新的...我有一个“查询”类,其中包含另一个名为“车辆”的类的通用列表。我正在构建代码以从父查询中添加/编辑/删除车辆。目前,我特别关注删除。根据我目前所读的内容,我似乎可以使用Vehicles.RemoveAll()来删除具有特定VehicleID的项目或具有特定EnquiryID的所有项目。我的问题是理解如何为.RemoveAll提供正确的谓词-我看到的示例过于简单(或者由于我缺乏谓词、委托(delegate)和lambda表达式的知识,我可能过于简单了)。所以如果我有一个

c# - 为什么 LINQ .Where(predicate).First() 比 .First(predicate) 快?

我正在做一些性能测试并注意到像这样的LINQ表达式result=list.First(f=>f.Id==i).Property比慢result=list.Where(f=>f.Id==i).First().Property这似乎违反直觉。我原以为第一个表达式会更快,因为它可以在满足谓词后立即停止遍历列表,而我原以为.Where()表达式可能遍历在对结果子集调用.First()之前整个列表。即使后者确实短路,也不应该比直接使用First快,但确实如此。下面是两个非常简单的单元测试来说明这一点。在TestWhereAndFirst上进行优化编译时,比.Net和Silverlight4上的T

c# - 委托(delegate):Predicate vs. Action vs. Func

谁能对这3个最重要的委托(delegate)提供一个很好的解释(希望有例子):谓词行动函数 最佳答案 Predicate:本质上是Func;询问“指定的参数是否满足委托(delegate)所委托(delegate)的条件?”用于List.FindAll之类的东西。Action:在给定参数的情况下执行操作。非常通用。在LINQ中使用不多,因为它基本上意味着副作用。Func:在LINQ中广泛使用,通常用于转换参数,例如通过将复杂结构转换到一个属性。其他重要委托(delegate):EventHandler/EventHandler:在整