Ios5 NSPredicate不';在iOS 5中为长值筛选数据

Ios5 NSPredicate不';在iOS 5中为长值筛选数据,ios5,nsarray,filtering,nspredicate,Ios5,Nsarray,Filtering,Nspredicate,我正在尝试使用NSPredicate从数组中筛选数据。 My array(arrLikes)包含来自服务器的以下数据 { "id":17, "likes":[ { "likedBy": { "firstName":"Bob", "lastName":"Builder", "id":1 } }], "c

我正在尝试使用NSPredicate从数组中筛选数据。 My array(arrLikes)包含来自服务器的以下数据

{
    "id":17,
    "likes":[
        {
        "likedBy":
            {
             "firstName":"Bob",
             "lastName":"Builder",
             "id":1
            }
        }],
    "comments":[]
}
我正在尝试从数组中筛选数据,如下所示

long loggedInUserId = [[dictUserInfo objectForKey:@"id"] longValue];
NSPredicate *likePredicate = [NSPredicate predicateWithFormat:@"id == %ld", loggedInUserId ];
NSArray *filteredLikeArray  = [arrLikes filteredArrayUsingPredicate:likePredicate];
即使我的loggedInUserId为1,FilteredLikerRay计数也会运行0。 上面的代码有什么错误?
感谢您的任何帮助。谢谢。

您是否尝试按如下方式将long转换为NSString

long loggedInUserId = 17;
NSString *stringUserId = [NSString stringWithFormat:@"%ld", loggedInUserId];
NSPredicate *likePredicate = [NSPredicate predicateWithFormat:@"id == %@", stringUserId];
NSArray *filteredLikeArray  = [arrLikes filteredArrayUsingPredicate:likePredicate];

“likes”数组中有一个“id”标记,您要在“likes”数组中过滤项目吗?是的。。。我需要过滤“喜欢”数组中的项目