[英]How to add string object in nsmutable array if some string is empty
arrdata=[[NSMutableArray alloc]initWithObjects:strname,strWeb,strAdd,strPhone,strrate, nil];
[arrAllData addObject:arrdata];
我從Web服務獲取數據。 在我的條件下,如果strweb
沒有值,那么它只會忽略其他值,如stradd
, sphone
和strrate
。 我怎么解決這個問題?
您可以用最簡單的方式做到這一點。
if(strweb==nil)
{
strweb=@"null";
}
注意:在<>括號中傳遞null;
試試這個代碼,
if(strWeb == nil){
strWeb = [NSString stringWithFormat:@"%@", [NSNull null]];
}
arrdata=[[NSMutableArray alloc]initWithObjects:strname,strWeb,strAdd,strPhone,strrate, nil];
[arrAllData addObject:arrdata];
當您的任何對象在數組創建時間為零時,則您的數組將以比對象結尾,其余對象將被丟棄。 因此,根據上述代碼,為什么需要檢查每個對象的原因不應為零,然后將其添加到數組中。
如果strWeb為nil,則您的數組結構為
arrdata=[[NSMutableArray alloc]initWithObjects:strname,nil]; future object will discard.,strAdd,strPhone,strrate,
arrdata的輸出僅包含一個對象strname
另一種方式,
如果您的字符串為nil,則設置任何默認值。 例如,
if(strWeb == nil){
strWeb = @"This Value is discarded"; // It could be anything identifier for your purpose.
}
arrdata=[[NSMutableArray alloc]initWithObjects:strname,strWeb,strAdd,strPhone,strrate, nil];
[arrAllData addObject:arrdata];
檢索時間時,您可以將上面的字符串與對象內部的值進行匹配。
您使用初始化程序-initWithObjects:
如您所知,對象列表以nil
結尾。 如果引用之一的值為nil
,則-initWithObjects:
認為這是終止符。
檢查引用(即strweb)。 如果為nil
,則為其分配一個默認值,或者在列表中未遇到該變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.