我有多个阵列,但是,他们没有保留他们的数据用于另一种方法.
这是我如何设置(简化)
.h
NSArray *array;
@property (nonatomic, copy) NSArray *array;
-(void)someMethod:(NSArray*)someArray;
-(void)heresNewMethod;
Run Code Online (Sandbox Code Playgroud)
.m
-(void)someMethod:(NSArray*)someArray
{
array = [someArray copy];
}
-(void)heresNewMethod //gets called by method not shown
{
NSLog(@"%@", array);
}
Run Code Online (Sandbox Code Playgroud) 我有一个可变数组,它在不同的索引处有不同的值,例如索引值为0 Hi 1这个2是3 iphone 4测试.
所以在不同的索引,数组有不同的字符串值现在我想把它变成一个字符串,其中读取为Hi这是iphone测试.
谢谢.
我有一个变量声明为NSDictionary.如何将其复制到extern const NSArray变量?例如:
NSMutableDictionary *selectedItem = [self.dataArray objectAtIndex:indexPath.row];
[selectedItem setObject:[NSNumber numberWithBool:targetCustomCell.checked]
forKey:@"checked"];
Run Code Online (Sandbox Code Playgroud) 我想迭代一个整数的NSArray并将每一个与特定的int进行比较.所有整数都是C类型的整数.
我使用的代码如下:
-(int)ladderCalc: (NSArray*)amounts: (int)amount
{
int result;
for (NSUInteger i=0; i< [amounts count]; i++)
{
if (amount < [amounts objectAtIndex:i]);
{
// do something
}
// do something
}
}
Run Code Online (Sandbox Code Playgroud)
但是,在将int amount与结果进行比较时出现错误,[amounts objectAtIndex:i]因为您无法将id与int进行比较.为什么这个案件涉及id?不应该objectAtIndex只是在指定的索引处返回对象吗?是否可以将返回的对象强制转换为C int然后进行比较?
或者我应该免除NSArray并在C中做这种类型的事情?
如何在NSArray上执行自定义排序操作.我有一个字符串数组,这是我想要的订单.
NSArray A = {cat, dog, mouse, pig, donkey}
Run Code Online (Sandbox Code Playgroud)
我有一个字符串数组,没有按我想要的方式排序.
NSArray B = {dog,cat,mouse,donkey,pig}
Run Code Online (Sandbox Code Playgroud)
什么是最好的方式将阵列B放在与阵列A相同的顺序而不必使用密钥?
我有一个单词列表存储在一个NSArray,我想找到其中的所有单词的结尾'ing'.
有人可以提供一些示例/伪代码.
我有一个包含两个元素50和60的数组:
NSArray*array = [NSArray arrayWithObjects:
[NSNumber numberWithLong:50],
[NSNumber numberWithLong:60], nil];
Run Code Online (Sandbox Code Playgroud)
稍后使用数组时(事实上我将此数组作为默认列表写入plist文件)我这样做:
long value = [array objectAtIndex:1];
Run Code Online (Sandbox Code Playgroud)
此值包含15559后我不明白.在调试器中[array objectAtIndex:1]清楚地显示(长)60.

对不起,我看不出有什么不对;(
有任何想法吗?
罗纳德
我有一堆NSNumbers 的数组.从UISlider用户停止拖动时获取某个值.我想从数组中获取关闭数字.
因此,例如,如果用户拖动UISlider到13,并且NSArray包含NSNumberswith 10和15; 我想15从阵列中获取.
数组示例:
NSArray *values = [NSArray arrayWithObjects:[NSNumber numberWithInt:15],
[NSNumber numberWithInt:20],
[NSNumber numberWithInt:30],
[NSNumber numberWithInt:45],
[NSNumber numberWithInt:60],
[NSNumber numberWithInt:90],
[NSNumber numberWithInt:110], nil];
Run Code Online (Sandbox Code Playgroud)
如何从阵列中获取正确的数字?
我有一个NSArray,我想用谓词过滤.这就是我所拥有的.
NSLog(@"text is %@",txtSearch.text);
NSPredicate *bPredicate =
[NSPredicate predicateWithFormat:@"SELF beginswith[c] '%@'",txtSearch.text];
arrSearchedPlayers =
[arrPlayers filteredArrayUsingPredicate:bPredicate];
NSLog(@"array after searched is %@",arrSearchedPlayers);
Run Code Online (Sandbox Code Playgroud)
当我输入文本时,我的数组保持为空.但是当我尝试这个谓词时,
NSPredicate *bPredicate =
[NSPredicate predicateWithFormat:@"SELF beginswith[c] 's'"];
Run Code Online (Sandbox Code Playgroud)
我得到了正确的结果.任何人都知道问题是什么?
亲切的问候
我尝试将从服务器获取的json数据附加到对象数组,并且如果有任何重复,则要删除任何重复数据
这是我的自定义类
class datastruct {
var id: Int?
var name: String?
init(add: NSDictionary) {
id = add["id"] as? Int
name = add["name"] as? String
}
}
Run Code Online (Sandbox Code Playgroud)
这是我用来将json附加到我的数组的代码
var data:Array< datastruct > = Array < datastruct >()
Alamofire.request(url)
.responseJSON{ response in
switch response.result {
case .success(let JSON):
if let list = JSON as? NSArray {
for i in 0 ..< list.count {
if let res = list[i] as? NSDictionary {
self.data.append(datastruct(add: res))
}
}
self.refresh()
}
case .failure(let error):
}
} …Run Code Online (Sandbox Code Playgroud) nsarray ×10
objective-c ×7
ios ×5
iphone ×2
nsdictionary ×2
c ×1
cocoa ×1
indexing ×1
json ×1
nsnumber ×1
nspredicate ×1
nsstring ×1
return-value ×1
search ×1
swift3 ×1