كيفية تحويل الأشياء NSNumber لأغراض الحسابية؟

StackOverflow https://stackoverflow.com/questions/1801197

  •  05-07-2019
  •  | 
  •  

سؤال

وأنا على تطوير بعض التعليمات البرمجية التي يمكنني استخدام الماسح الضوئي للوصول الى NSNumbers من سلسلة، ويقول x و y.

والآن أريد لحساب شيء بسيط من x و y، مثلا، ض = 10.0 / (س + ص / 60.0) /60.0). لا أستطيع أن أفعل ذلك مباشرة، لأن المترجم لا يحب العادي والرموز الحسابية تطبيقها على الكائنات العدد.

وهكذا، حاولت تحديد الانجاز ويارد، من النوع المزدوج، ثم حاول تحويل نوع

والانجاز = (مزدوج) س.    يارد = (مزدوج) ذ؛

ولكن هذا يعطي أيضا خطأ ترجمة. كيف يمكن للمرء الحصول على الأشياء NSNumber تحويلها لاستخدامها في تعبيرات حسابية عادية؟ فعلت تصفح كبيرا من الأدب، ولم تجد الجواب.

ويرجع الفضل في ذلك مسبقا لأية مساعدة.

وجون دونر

هل كانت مفيدة؟

المحلول

استخدم في " قيمة "أساليب الطبقة NSNumber مثل <وأ href =" http://developer.apple.com/mac/library/documentation/cocoa/Reference/Foundation /Classes/NSNumber_Class/Reference/Reference.html#//apple_ref/occ/instm/NSNumber/doubleValue "يختلط =" noreferrer "> doubleValue .

// Initialized to something earlier
NSNumber * x, y;

//Convert NSNumbers to double
double xD = [x doubleValue]; 
double yD = [y doubleValue];

// You can now use regular arithmetic operators
double zD = 10.0 / ((x + y / 60.0) / 60.0);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top