zoukankan      html  css  js  c++  java
  • Objective-C Numbers

    In Objective-C programming language, in order to save the basic data types like int, float, bool in object form,

    Objective-C provides a range of methods to work with NSNumber and important ones are listed in following table.

    S.N.Method and Description
    1 + (NSNumber *)numberWithBool:(BOOL)value

    Creates and returns an NSNumber object containing a given value, treating it as a BOOL.

    2 + (NSNumber *)numberWithChar:(char)value

    Creates and returns an NSNumber object containing a given value, treating it as a signed char.

    3 + (NSNumber *)numberWithDouble:(double)value

    Creates and returns an NSNumber object containing a given value, treating it as a double.

    4 + (NSNumber *)numberWithFloat:(float)value

    Creates and returns an NSNumber object containing a given value, treating it as a float.

    5 + (NSNumber *)numberWithInt:(int)value

    Creates and returns an NSNumber object containing a given value, treating it as a signed int.

    6 + (NSNumber *)numberWithInteger:(NSInteger)value

    Creates and returns an NSNumber object containing a given value, treating it as an NSInteger.

    7 - (BOOL)boolValue

    Returns the receiver's value as a BOOL.

    8 - (char)charValue

    Returns the receiver's value as a char.

    9 - (double)doubleValue

    Returns the receiver's value as a double. 

    10 - (float)floatValue

    Returns the receiver's value as a float.

    11 - (NSInteger)integerValue

    Returns the receiver's value as an NSInteger.

    12 - (int)intValue

    Returns the receiver's value as an int.

    13 - (NSString *)stringValue

    Returns the receiver's value as a human-readable string.

    Here is a simple example for using NSNumber which multiplies two numbers and returns the product.

    复制代码
     1 #import <Foundation/Foundation.h>
     2 
     3 @interface SampleClass:NSObject
     4 
     5 - (NSNumber *)multiplyA:(NSNumber *)a withB:(NSNumber *)b;
     6 
     7 @end
     8 
     9 @implementation SampleClass
    10 
    11 - (NSNumber *)multiplyA:(NSNumber *)a withB:(NSNumber *)b
    12 {
    13    float number1 = [a floatValue];
    14    float number2 = [b floatValue];
    15    float product = number1 * number2;
    16    NSNumber *result = [NSNumber numberWithFloat:product];
    17    return result;
    18 }
    19 
    20 @end
    21 
    22 int main()
    23 {
    24    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    25 
    26    SampleClass *sampleClass = [[SampleClass alloc]init];
    27    NSNumber *a = [NSNumber numberWithFloat:10.5];
    28    NSNumber *b = [NSNumber numberWithFloat:10.0];   
    29    NSNumber *result = [sampleClass multiplyA:a withB:b];
    30    NSString *resultString = [result stringValue];
    31    NSLog(@"The product is %@",resultString);
    32 
    33    [pool drain];
    34    return 0;
    35 }
    复制代码

    Now when we compile and run the program, we will get the following result.

     1 2013-09-14 18:53:40.575 demo[16787] The product is 105

  • 相关阅读:
    开辟空间以存放一个结构体变量
    用结构体变量的引用作函数参数
    用指向结构体变量的指针作实参
    结构体变量作函数参数
    简单链表
    指向结构体变量的指针的应用
    结构体数组应用举例
    对候选人得票的统计程序
    引用结构体变量中的成员
    对三个变量按由小到大的顺序排序
  • 原文地址:https://www.cnblogs.com/xujinzhong/p/8430511.html
Copyright © 2011-2022 走看看