Я хочу создать функцию для возврата 1d-массива с двумя элементами в нем, как показано ниже:
(NSArray *) myFunction {
NSArray * myArr = [[NSArray alloc]initwithobjects:[NSNumbers numberwithfloat:1.0f],[NSNumbers numberwithfloat:1.0f]];
//the above line is just pseudo code
}
но когда я хочу получить nsarray из этой функции, я хочу сделать это самым простым способом, который кажется невозможным в objective-c, это то, что я написал, чтобы получить два простых значения с плавающей запятой, которые не подходят, но у меня нет любые дополнительные знания о том, как это сделать проще
NSArray *tt2 = [[NSArray alloc] initWithArray:[self myFunction]];
float fp1=0.0f;
float fp2=0.0f;
BOOL firstTime = YES;
for(NSNumber *n in tt2)
{
if (firstTime) {
NSLog(@"%@" , n);
fp1 = [n floatValue];
firstTime = NO;
}
else {
fp2 = [n floatValue];
}
}
приведенный выше код выглядит смешно, но у меня нет другого выбора, если вы не посоветуете мне, как преобразовать nsarray в nsnumber, а затем nsnumber в float []