标签: nsmutablearray

取消分配自定义对象的NSMutableArray

我需要帮助解除我的自定义对象的NSMutableArray.我需要保留数组,所以我在.h中添加了一个属性,然后在.m文件的dealloc中释放它.当我向数组添加对象时,我执行以下操作:

  myarray = [[NSMutableArray alloc] init];
  [myarray addObject:[[mycustomObject alloc]initWithObject:obj1]];
  [myarray addObject:[[mycustomObject alloc]initWithObject:obj2]];
Run Code Online (Sandbox Code Playgroud)

现在,我不知道如何发布mycustomobject.如果我执行以下操作:

   [myarray addObject:[[[mycustomObject alloc]initWithObject:obj1] autorelease]];
Run Code Online (Sandbox Code Playgroud)

我稍后访问数组时会遇到问题.请指教.

memory-management objective-c nsmutablearray dealloc

1
推荐指数
1
解决办法
2105
查看次数

iphone [removeObjectIdenticalTo:]不起作用

我有以下代码填充数组(这是在循环中):

NSString *code = [NSString stringWithFormat:@"%@ - (%@) %@",[tempDic objectForKey:@"state"],[tempDic objectForKey:@"city"],[tempDic objectForKey:@"name"]];

[tempArrayOfAirports removeObjectIdenticalTo:code]; // checks for a previous object, then removes if found

[tempArrayOfAirports addObject:code]; //adds the object
Run Code Online (Sandbox Code Playgroud)

以前,代码只是:

NSString *code = [tempDic objectForKey:@"city"];

[tempArrayOfAirports removeObjectIdenticalTo:code];

[tempArrayOfAirports addObject:code];
Run Code Online (Sandbox Code Playgroud)

哪个工作正常,但由于某种原因,更改"代码"使其无法找到其他相同的字符串.我的结果是一个包含许多重复对象的巨大数组.

iphone nsmutablearray ipad

1
推荐指数
1
解决办法
2144
查看次数

崩溃了我的应用[NSMutableArray1 removeAllObjects] iphone sdk

我使用此代码来检查我的NSMutableArray中是否存在任何对象,如果是,我将它们全部删除但它崩溃了虽然有对象为什么?

    if([NSMutableArray1 count]==1)
    {
        [poemoptionslist removeAllObjects];
    }



    if ([NSMutableArray1 count]==0)
    {
        [poemoptionslist addObject: final1];
    }
Run Code Online (Sandbox Code Playgroud)

控制台输出

2010-10-18 03:42:13.166 app1 [33398:207] *由于未捕获的异常'NSInternalInconsistencyException'终止应用程序,原因:' - [__ NSCFArray removeObjectAtIndex:]:发送到不可变对象的mutating方法'*第一次调用时调用堆栈:(0 CoreFoundation
0x02e55b99 exceptionPreprocess + 185 1 libobjc.A.dylib
0x02fa540e objc_exception_throw + 47 2 CoreFoundation
0x02e0e238 + [NSException raise:format:arguments:] + 136 3
CoreFoundation
0x02e0e1aa + [NSException raise:format:] + 58 4
CoreFoundation
0x02e4d3c1 - [__NSCFArray removeObjectAtIndex:] + 193 5
CoreFoundation
0x02dfe973 - [NSMutableArray removeAllObjects] + 83 6
poemsoflove
0x0004dc8d - [submitpoem submitpoem:] + 18560 7 UIKit
0x003b77f8 …

iphone nsmutablearray

1
推荐指数
1
解决办法
3636
查看次数

连接NSMutableArray中的所有元素以形成NSString

我有一个NSMtringArray的NSString对象.我如何创建一个NSString,它由该数组中的所有元素组成,中间用分号连接在一起?

例如:

array = "hello","hi","bye",nil;
output = "hello;hi;bye";
Run Code Online (Sandbox Code Playgroud)

iphone nsstring nsmutablearray ios

1
推荐指数
1
解决办法
1767
查看次数

NSGenericException,NSMutableArray给出了一些问题

我使用NSMutableArray来存储我的视图上显示的一些UIView对象.我正在使用NSTimer连续调用一个方法来检查该数组的内容并收到一些错误.

这是控制台的堆栈跟踪

2011-03-15 15:23:26.556 something[8166:207] *** Terminating app due to uncaught exception 'NSGenericException', reason: '*** Collection <__NSArrayM: 0x5d32140> was mutated while being enumerated.(
    "<PDColoredProgressView: 0x5a1c910; baseClass = UIProgressView; frame = (10 98; 20 20); transform = [0, -1, 1, 0, 0, 0]; opaque = NO; tag = 5; layer = <CALayer: 0x5a1a3e0>>"
)'
*** Call stack at first throw:
(
    0   CoreFoundation                      0x023a0919 __exceptionPreprocess + 185
    1   libobjc.A.dylib                     0x024ee5de objc_exception_throw + 47
    2   CoreFoundation                      0x023a03d9 __NSFastEnumerationMutationHandler + 377
    3   something …
Run Code Online (Sandbox Code Playgroud)

iphone exception objective-c nsmutablearray ios

1
推荐指数
1
解决办法
2022
查看次数

used memory:c-array与NSMutableArray

我需要在不同的数组中存储多达1.000.000个双精度值(在计算运行期间).到目前为止,我正在使用,NSMutableArray但看起来内存使用量很大.一个想法是使用一个c数组,以避免在中存储对象NSMutableArray.有没有办法粗略估计NSMutableArray vs.和c-array的内存使用情况?(我找不到任何关于 - 对象的大小NSNumber与像double或float这样的原语的信息.

谢谢.

arrays memory-management objective-c nsmutablearray

1
推荐指数
1
解决办法
520
查看次数

Objective-c,迭代空NSArray时的奇怪行为

我不明白这段代码发生了什么:

sortedArray是NSMutableArray,为空,因此,sortedArray.count的值为0.

     for (NSUInteger i = 0 ; i < (sortedArray.count -1) ; i++) 
         NSLog(@"Apparently %d < %d  ( [sortedArray count] %d)", i, sortedArray.count-1, [sortedArray count] );
Run Code Online (Sandbox Code Playgroud)

因此,我们永远不应该进入循环,但我在日志中看到以下内容:

2014-01-21 12:11:16.433 AppName [445:60b]显然0 <-1([sortedArray count] 0)

有没有人知道什么可以触发问题?

objective-c nsmutablearray nsarray

1
推荐指数
1
解决办法
126
查看次数

使用NSSortDescriptor排序数组不起作用

我有一个包含多个字典的数组:

 {
    highRate = "600.49";
    hotelId = 439607;
    hotelRating = "2.5";
    latitude = "12.97153";
    longitude = "80.15096";
    lowRate = "600.49";
    name = "Hotel Kingss Park";
    proximityDistance = "17.999475";
    thumbNailUrl = "http://images.travelnow.com/hotels/7000000/6510000/6500300/6500296/6500296_3_t.jpg";
    tripAdvisorRating = "4.0";
},
    {
    highRate = "990.0";
    hotelId = 327929;
    hotelRating = "2.0";
    latitude = "13.06931";
    longitude = "80.2706";
    lowRate = "450.45";
    name = "Mallika Residency";
    proximityDistance = "1.6274245";
    thumbNailUrl = "http://images.travelnow.com/hotels/3000000/2960000/2958400/2958303/2958303_2_t.jpg";
    tripAdvisorRating = "2.5";
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用lowRate键对此数组进行排序.

NSSortDescriptor *rating_Sort = [NSSortDescriptor sortDescriptorWithKey:@"lowRate" ascending:NO];
NSArray *descriptorArray = …
Run Code Online (Sandbox Code Playgroud)

sorting objective-c nsmutablearray nssortdescriptor ios

1
推荐指数
1
解决办法
2293
查看次数

从包含nsdictionary的nsmutablearray中删除重复项

我想从nsmutablearray中删除重复项.

数组结构: -

(
    {
        "act_end_date" = "";
        "act_entry_date" = "13/11/2014";
        "act_recurrrance_type" = Daily;
        "act_start_date" = "2014-11-13";
        "row_id" = 0;
        "act_id" = 2;
    }
    {
        "act_end_date" = "";
        "act_entry_date" = "13/11/2014";
        "act_recurrrance_type" = Daily;
        "act_start_date" = "2014-11-13";
        "row_id" = 1;
        "act_id" = 2;
    }
    {
        "act_end_date" = "";
        "act_entry_date" = "16/11/2014";
        "act_recurrrance_type" = Daily1;
        "act_start_date" = "2014-11-15";
        "row_id" = 2;
        "act_id" = 3;
    }
)
Run Code Online (Sandbox Code Playgroud)

我想要的是检查数组包含任何具有相同act_id的字典.如果是,则删除第一个字典.即上述数组的预期结果: -

(
        {
            "act_end_date" = "";
            "act_entry_date" = "13/11/2014";
            "act_recurrrance_type" = Daily;
            "act_start_date" = …
Run Code Online (Sandbox Code Playgroud)

nsmutablearray nsmutabledictionary ios

1
推荐指数
2
解决办法
2592
查看次数

为什么包含三个JSON对象的NSMutableArray的大小返回1而不是3?

请帮我理解这一点,但我有一个NSMutableArray,其中NSLog包含以下内容:

(
        (
                {
            day = 0;
            "end_time" = "21:00";
        },
                {
            day = 0;
            "end_time" = "21:00";
        },
                {
            day = 0;
            "end_time" = "21:00";
        }
    )
)
Run Code Online (Sandbox Code Playgroud)

当我执行时[array count],它返回1而不是3.我在数组中看到3个对象,为什么它认为只有1个对象?

也许我不理解?谢谢

objective-c nsmutablearray

1
推荐指数
1
解决办法
52
查看次数