उद्देश्य-सी संख्या
ऑब्जेक्टिव-सी प्रोग्रामिंग लैंग्वेज में, बेसिक डेटा टाइप्स जैसे इंट, फ्लोट, बूल को ऑब्जेक्ट फॉर्म में सेव करने के लिए,
उद्देश्य-सी NSNumber के साथ काम करने के लिए कई तरीके प्रदान करता है और महत्वपूर्ण को निम्न तालिका में सूचीबद्ध किया गया है।
अनु क्रमांक। | विधि और विवरण |
---|---|
1 | + (NSNumber *)numberWithBool:(BOOL)value एक NSNumber ऑब्जेक्ट बनाता है और देता है, इसे BOOL के रूप में मानते हुए। |
2 | + (NSNumber *)numberWithChar:(char)value NSNumber ऑब्जेक्ट को दिए गए मान के साथ बनाता है और देता है, इसे एक हस्ताक्षरित चार के रूप में मानता है। |
3 | + (NSNumber *)numberWithDouble:(double)value एक NSNumber ऑब्जेक्ट को एक दिए गए मान के साथ बनाता है और लौटाता है, इसे एक दोहरा मान लेता है। |
4 | + (NSNumber *)numberWithFloat:(float)value एक NSNumber ऑब्जेक्ट बनाता है और देता है, इसे एक फ्लोट के रूप में मानते हुए। |
5 | + (NSNumber *)numberWithInt:(int)value NSNumber ऑब्जेक्ट को दिए गए मान के साथ बनाता है और देता है, इसे एक हस्ताक्षरित इंट के रूप में मानता है। |
6 | + (NSNumber *)numberWithInteger:(NSInteger)value एक NSNumber ऑब्जेक्ट बनाता है और देता है, जो इसे NSInteger मानते हैं। |
7 | - (BOOL)boolValue BOOL के रूप में रिसीवर का मान लौटाता है। |
8 | - (char)charValue रिसीवर के मूल्य को चार के रूप में लौटाता है। |
9 | - (double)doubleValue एक डबल के रूप में रिसीवर का मान लौटाता है। |
10 | - (float)floatValue एक फ्लोट के रूप में रिसीवर का मान लौटाता है। |
1 1 | - (NSInteger)integerValue एक NSInteger के रूप में रिसीवर का मान लौटाता है। |
12 | - (int)intValue एक इंट के रूप में रिसीवर का मान लौटाता है। |
13 | - (NSString *)stringValue मानव-पठनीय स्ट्रिंग के रूप में रिसीवर का मान लौटाता है। |
यहां NSNumber का उपयोग करने के लिए एक सरल उदाहरण है जो दो संख्याओं को गुणा करता है और उत्पाद को वापस करता है।
#import <Foundation/Foundation.h>
@interface SampleClass:NSObject
- (NSNumber *)multiplyA:(NSNumber *)a withB:(NSNumber *)b;
@end
@implementation SampleClass
- (NSNumber *)multiplyA:(NSNumber *)a withB:(NSNumber *)b {
float number1 = [a floatValue];
float number2 = [b floatValue];
float product = number1 * number2;
NSNumber *result = [NSNumber numberWithFloat:product];
return result;
}
@end
int main() {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
SampleClass *sampleClass = [[SampleClass alloc]init];
NSNumber *a = [NSNumber numberWithFloat:10.5];
NSNumber *b = [NSNumber numberWithFloat:10.0];
NSNumber *result = [sampleClass multiplyA:a withB:b];
NSString *resultString = [result stringValue];
NSLog(@"The product is %@",resultString);
[pool drain];
return 0;
}
अब जब हम प्रोग्राम को संकलित करते हैं और चलाते हैं, तो हमें निम्नलिखित परिणाम मिलेंगे।
2013-09-14 18:53:40.575 demo[16787] The product is 105