Class: NSNumber

Inherits:
NSValue show all

Overview

NSNumber is a subclass of NSValue that offers a value as any C scalar (numeric) type. It defines a set of methods specifically for setting and accessing the value as a signed or unsigned char, short int, int, long int, long long int, float, or double or as a BOOL. (Note that number objects do not necessarily preserve the type they are created with.) It also defines a compare: method to determine the ordering of two NSNumber objects.

Direct Known Subclasses

NSDecimalNumber, Numeric

Class Method Summary (collapse)

Instance Method Summary (collapse)

Methods inherited from NSValue

#getValue:, #initWithBytes:objCType:, #isEqualToValue:, #nonretainedObjectValue, #pointerValue, #rangeValue, value:withObjCType:, valueWithBytes:objCType:, valueWithNonretainedObject:, valueWithPointer:, valueWithRange:

Methods inherited from NSObject

#!, #!=, #!~, #, #==, #===, #=~, #Rational, #__callee__, #__method__, #__send__, #__type__, `, alloc, allocWithZone:, #autoContentAccessingProxy, autoload, autoload?, autorelease_pool, #awakeAfterUsingCoder:, binding, block_given?, caller, cancelPreviousPerformRequestsWithTarget:, cancelPreviousPerformRequestsWithTarget:selector:object:, catch, class, classFallbacksForKeyedArchiver, #classForCoder, #classForKeyedArchiver, classForKeyedUnarchiver, #clone, conformsToProtocol:, #copy, copyWithZone:, #dealloc, #define_singleton_method, description, display, #doesNotRecognizeSelector:, #dup, #enum_for, #eql?, #equal?, #extend, fail, #finalize, format, #forwardInvocation:, #forwardingTargetForSelector:, framework, #freeze, #frozen?, getpass, gets, global_variables, #init, initialize, #initialize_clone, #initialize_copy, #initialize_dup, #inspect, instanceMethodForSelector:, instanceMethodSignatureForSelector:, #instance_eval, #instance_exec, #instance_of?, #instance_variable_defined?, #instance_variable_get, #instance_variable_set, #instance_variables, instancesRespondToSelector:, isSubclassOfClass:, #is_a?, iterator?, #kind_of?, lambda, load, load_bridge_support_file, load_plist, local_variables, loop, #method, #methodForSelector:, #methodSignatureForSelector:, #methods, #mutableCopy, mutableCopyWithZone:, new, #nil?, open, p, #performSelector:onThread:withObject:waitUntilDone:, #performSelector:onThread:withObject:waitUntilDone:modes:, #performSelector:withObject:afterDelay:, #performSelector:withObject:afterDelay:inModes:, #performSelectorInBackground:withObject:, #performSelectorOnMainThread:withObject:waitUntilDone:, #performSelectorOnMainThread:withObject:waitUntilDone:modes:, print, printf, #private_methods, proc, #protected_methods, #public_method, #public_methods, #public_send, putc, puts, raise, rand, readline, readlines, #replacementObjectForCoder:, #replacementObjectForKeyedArchiver:, require, resolveClassMethod:, resolveInstanceMethod:, #respond_to?, #respond_to_missing?, select, #send, setVersion:, #singleton_methods, sprintf, srand, superclass, #taint, #tainted?, #tap, test, throw, #to_plist, #to_s, trace_var, trap, #trust, #untaint, untrace_var, #untrust, #untrusted?, version

Constructor Details

This class inherits a constructor from NSObject

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class NSObject

Class Method Details

+ (NSNumber) numberWithBool(value)

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

Parameters:

  • value (Boolean)

    The value for the new number.

Returns:

+ (NSNumber) numberWithChar(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as a signed char.

+ (NSNumber) numberWithDouble(value)

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

Parameters:

  • value (Float)

    The value for the new number.

Returns:

+ (NSNumber) numberWithFloat(value)

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

Parameters:

  • value (Float)

    The value for the new number.

Returns:

+ (NSNumber) numberWithInt(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as a signed int.

+ (NSNumber) numberWithInteger(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as an NSInteger.

+ (NSNumber) numberWithLong(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as a signed long.

+ (NSNumber) numberWithLongLong(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as a signed long long.

+ (NSNumber) numberWithShort(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as a signed short.

+ (NSNumber) numberWithUnsignedChar(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as an unsigned char.

+ (NSNumber) numberWithUnsignedInt(value)

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

Parameters:

  • value (unsigned int)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as an unsigned int.

+ (NSNumber) numberWithUnsignedInteger(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as an NSUInteger.

+ (NSNumber) numberWithUnsignedLong(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as an unsigned long.

+ (NSNumber) numberWithUnsignedLongLong(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as an unsigned long long.

+ (NSNumber) numberWithUnsignedShort(value)

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

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (NSNumber)

    An NSNumber object containing value, treating it as an unsigned short.

Instance Method Details

- (Boolean) boolValue

Returns the receiver’s value as a BOOL.

Returns:

  • (Boolean)

    The receiver’s value as a BOOL, converting it as necessary.

- (Integer) charValue

Returns the receiver’s value as a char.

Returns:

  • (Integer)

    The receiver’s value as a char, converting it as necessary.

- (NSComparisonResult) compare(aNumber)

Returns an NSComparisonResult value that indicates whether the receiver is greater than, equal to, or less than a given number. The compare: method follows the standard C rules for type conversion. For example, if you compare an NSNumber object that has an integer value with an NSNumber object that has a floating point value, the integer value is converted to a floating-point value for comparison.

Parameters:

  • aNumber (NSNumber)

    The number with which to compare the receiver.This value must not be nil. If the value is nil, the behavior is undefined and may change in future versions of OS X.

Returns:

  • (NSComparisonResult)

    NSOrderedAscending if the value of aNumber is greater than the receiver’s, NSOrderedSame if they’re equal, and NSOrderedDescending if the value of aNumber is less than the receiver’s.

- (NSDecimal) decimalValue

Returns the receiver’s value, expressed as an NSDecimal structure.

Returns:

  • (NSDecimal)

    The receiver’s value, expressed as an NSDecimal structure. The value returned isn’t guaranteed to be exact for float and double values.

- (String) descriptionWithLocale(aLocale)

Returns a string that represents the contents of the receiver for a given locale. For example, if you have an NSNumber object that has the integer value 522, sending it the descriptionWithLocale: message returns the string “522”. To obtain the string representation, this method invokes NSString’s initWithFormat:locale: method, supplying the format based on the type the NSNumber object was created with:Data Type Format Specification char %i double %0.16g float %0.7g int %i long %li long long %lli short %hi unsigned char %u unsigned int %u unsigned long %lu unsigned long long %llu unsigned short %hu

Parameters:

  • aLocale (Object)

    An object containing locale information with which to format the description. Use nil if you don’t want the description formatted.

Returns:

  • (String)

    A string that represents the contents of the receiver formatted using the locale information in locale.

- (Float) doubleValue

Returns the receiver’s value as a double.

Returns:

  • (Float)

    The receiver’s value as a double, converting it as necessary.

- (Float) floatValue

Returns the receiver’s value as a float.

Returns:

  • (Float)

    The receiver’s value as a float, converting it as necessary.

- (Object) initWithBool(value)

Returns an NSNumber object initialized to contain a given value, treated as a BOOL.

Parameters:

  • value (Boolean)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as a BOOL.

- (Object) initWithChar(value)

Returns an NSNumber object initialized to contain a given value, treated as a signed char.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as a signed char.

- (Object) initWithDouble(value)

Returns an NSNumber object initialized to contain value, treated as a double.

Parameters:

  • value (Float)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as a double.

- (Object) initWithFloat(value)

Returns an NSNumber object initialized to contain a given value, treated as a float.

Parameters:

  • value (Float)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as a float.

- (Object) initWithInt(value)

Returns an NSNumber object initialized to contain a given value, treated as a signed int.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as a signed int.

- (Object) initWithInteger(value)

Returns an NSNumber object initialized to contain a given value, treated as an NSInteger.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as an NSInteger.

- (Object) initWithLong(value)

Returns an NSNumber object initialized to contain a given value, treated as a signed long.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as a signed long.

- (Object) initWithLongLong(value)

Returns an NSNumber object initialized to contain value, treated as a signed long long.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as a signed long long.

- (Object) initWithShort(value)

Returns an NSNumber object initialized to contain a given value, treated as a signed short.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as a signed short.

- (Object) initWithUnsignedChar(value)

Returns an NSNumber object initialized to contain a given value, treated as an unsigned char.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as an unsigned char.

- (Object) initWithUnsignedInt(value)

Returns an NSNumber object initialized to contain a given value, treated as an unsigned int.

Parameters:

  • value (unsigned int)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as an unsigned int.

- (Object) initWithUnsignedInteger(value)

Returns an NSNumber object initialized to contain a given value, treated as an NSUInteger.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as an NSUInteger.

- (Object) initWithUnsignedLong(value)

Returns an NSNumber object initialized to contain a given value, treated as an unsigned long.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as an unsigned long.

- (Object) initWithUnsignedLongLong(value)

Returns an NSNumber object initialized to contain a given value, treated as an unsigned long long.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as an unsigned long long.

- (Object) initWithUnsignedShort(value)

Returns an NSNumber object initialized to contain a given value, treated as an unsigned short.

Parameters:

  • value (Integer)

    The value for the new number.

Returns:

  • (Object)

    An NSNumber object containing value, treating it as an unsigned short.

- (Integer) integerValue

Returns the receiver’s value as an NSInteger.

Returns:

  • (Integer)

    The receiver’s value as an NSInteger, converting it as necessary.

- (Integer) intValue

Returns the receiver’s value as an int.

Returns:

  • (Integer)

    The receiver’s value as an int, converting it as necessary.

- (Boolean) isEqualToNumber(aNumber)

Returns a Boolean value that indicates whether the receiver and a given number are equal. Two NSNumber objects are considered equal if they have the same id values or if they have equivalent values (as determined by the compare: method).This method is more efficient than compare: if you know the two objects are numbers.

Parameters:

  • aNumber (NSNumber)

    The number with which to compare the receiver.

Returns:

  • (Boolean)

    YES if the receiver and aNumber are equal, otherwise NO.

- (Integer) longLongValue

Returns the receiver’s value as a long long.

Returns:

  • (Integer)

    The receiver’s value as a long long, converting it as necessary.

- (Integer) longValue

Returns the receiver’s value as a long.

Returns:

  • (Integer)

    The receiver’s value as a long, converting it as necessary.

- (const char) objCType

Returns a C string containing the Objective-C type of the data contained in the receiver.

Returns:

  • (const char)

    A C string containing the Objective-C type of the data contained in the receiver, as encoded by the @encode() compiler directive.

- (Integer) shortValue

Returns the receiver’s value as a short.

Returns:

  • (Integer)

    The receiver’s value as a short, converting it as necessary.

- (String) stringValue

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

Returns:

  • (String)

    The receiver’s value as a human-readable string, created by invoking descriptionWithLocale: where locale is nil.

- (Integer) unsignedCharValue

Returns the receiver’s value as an unsigned char.

Returns:

  • (Integer)

    The receiver’s value as an unsigned char, converting it as necessary.

- (Integer) unsignedIntegerValue

Returns the receiver’s value as an NSUInteger.

Returns:

  • (Integer)

    The receiver’s value as an NSUInteger, converting it as necessary.

- (unsigned int) unsignedIntValue

Returns the receiver’s value as an unsigned int.

Returns:

  • (unsigned int)

    The receiver’s value as an unsigned int, converting it as necessary.

- (Integer) unsignedLongLongValue

Returns the receiver’s value as an unsigned long long.

Returns:

  • (Integer)

    The receiver’s value as an unsigned long long, converting it as necessary.

- (Integer) unsignedLongValue

Returns the receiver’s value as an unsigned long.

Returns:

  • (Integer)

    The receiver’s value as an unsigned long, converting it as necessary.

- (Integer) unsignedShortValue

Returns the receiver’s value as an unsigned short.

Returns:

  • (Integer)

    The receiver’s value as an unsigned short, converting it as necessary.