ContaSObject - لماذا لا هذا العمل؟
-
30-09-2019 - |
سؤال
لدي صفيف أحاول التحقق من Wether أو لا يوجد INDEXPATH (.ROW).
أستخدم هذا الرمز:
if ([array containsObject:[NSNumber numberWithInt:indexPath.row]]){
NSLog(@"Yep, it exists in there.");
}
يتكون الصفيف من الأرقام 3 و 8 و 2. يقوم مسار الفهرس بتحميل الأرقام من 0 إلى 8 في حلقة.
هل يمكن لأي شخص أن يرى لماذا لا يعمل هذا؟
المحلول
نظرًا لأن الصفيف يحتوي على سلاسل ، يجب عليك المقارنة مع الأوتار. لإنشاء سلسلة رقمية ، استخدم -stringWithFormat:
. لذا:
if ([array containsObject:[NSString stringWithFormat:@"%d", indexPath.row]]){
NSLog(@"Yep, it exists in there.");
}
الحل الأفضل هو تخزين NSNumber في الصفيف.
لا تنتمي إلى StackOverflow