gpt4 book ai didi

iphone - 如何使用 valueforkey 作为 if 语句参数

转载 作者:行者123 更新时间:2023-11-28 20:42:35 26 4
gpt4 key购买 nike

我目前正在解析一堆看起来大致像这样的 xml

<Rows>
<Row ID="76" MANUFACTURER="DIB" ISTENT="F"/>
<Row ID="38" MANUFACTURER="HIB" ISTENT="T"/>
<Rows>

我想知道如何在 if 语句中使用 ISTENT 来只取回那些为真的值.. 或者因为这些值仍然是字符串而不是 bool 值 = @"T"或类似的东西..

这就是我目前所拥有的……但还远远不够……我希望它能让您了解我正在尝试什么。

if ([arrayData valueForKey:@"ISTENT"] == @"T") {

then pass my values over to custom method here.

}

但是它没有传回任何东西......

最佳答案

首先,您不应该将字符串与 == 进行比较。请改用 isEqualToString: 方法。

其次,我假设您已经成功解析了 XML 数据,并且您有一个包含每一行属性的字典数组。

第三,您没有比较字符串,因为 [arrayData valueForKey:@"ISTENT"] 将返回一个包含 ISTENT 键值的数组,显然您可以不要直接与字符串进行比较。

然后,您可以像这样过滤原始数组:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"%K like %@",@"ISTENT",@"T"];
NSArray *filteredArray = [arrayData filteredArrayUsingPredicate:predicate];

结果数组将只包含 ISTENT 等于 T 的行,我认为这就是您想要的。

关于iphone - 如何使用 valueforkey 作为 if 语句参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7812934/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com