028 Foundation框架中的数字类型:NSNmuber

Posted talk_8

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了028 Foundation框架中的数字类型:NSNmuber相关的知识,希望对你有一定的参考价值。

看官们,我们在上一章回中对NSNumber类型做了详细的分析,本章回中我们将给出完整的代码,请大家参考:

#import<Foundation/Foundation.h>

int main()
{
	int intValue = 4;
	NSInteger nsIntegerValue = 5;

    //两种初始化NSNumber的方法
	NSNumber *nsNumberA = [NSNumber numberWithInt: 6];
	NSNumber *nsNumberB = [[NSNumber alloc] initWithInt: 7];
	NSNumber *nsNumberC = [NSNumber numberWithChar:'A'];
	NSNumber *nsNumberD = [NSNumber numberWithBool:NO];


	NSLog(@"intValue = %i, nsIntegerValue = %li",intValue,nsIntegerValue);
	NSLog(@"nsNumberA = %@, nsNumberB = %@",nsNumberA,nsNumberB);
	NSLog(@"nsNumberC = %@, nsNumberD = %@",nsNumberC,nsNumberD);

    //对象类型的数字转换为基本类型的数字
	intValue = [nsNumberA intValue];
	nsIntegerValue = [nsNumberB intValue];
	NSLog(@"intValue = %i, nsIntegerValue = %li",intValue,nsIntegerValue);

	//对象类型的数字做比较,使用布尔值来判断比较结果
	if([nsNumberA isEqualToNumber: nsNumberB])
		NSLog(@" nsNumberA == nsNumberB");
	else
		NSLog(@" nsNumberA != nsNumberB");


	//使用枚举常量来判断比较结果
	if(NSOrderedAscending == [nsNumberA compare:nsNumberB])
		NSLog(@" nsNumberA < nsNumberB");
	else
		NSLog(@" nsNumberA >= nsNumberB");

	if(NSOrderedAscending == [nsNumberC compare:nsNumberD])
		NSLog(@" nsNumberC < nsNumberD");
	else
		NSLog(@" nsNumberC >= nsNumberD");

	//使用枚举值来判断比较结果
	if([nsNumberA compare:nsNumberB] > 0)
		NSLog(@" nsNumberA > nsNumberB");
	else
		NSLog(@" nsNumberA <= nsNumberB");

	return 0;
}

我们在代码中只列出了部分基本类型,大家可以举一反三自己动手写出来其它的基本类型并且编译运行。下面是程序的运行结果,请大家参考:

ex.out[1405:79901] intValue = 4, nsIntegerValue = 5
ex.out[1405:79901] nsNumberA = 6, nsNumberB = 7
ex.out[1405:79901] nsNumberC = 65, nsNumberD = 0
ex.out[1405:79901] intValue = 6, nsIntegerValue = 7
ex.out[1405:79901]  nsNumberA != nsNumberB
ex.out[1405:79901]  nsNumberA < nsNumberB
ex.out[1405:79901]  nsNumberC >= nsNumberD
ex.out[1405:79901]  nsNumberA <= nsNumberB

看官们,欲知后事如何且听下回分解!

以上是关于028 Foundation框架中的数字类型:NSNmuber的主要内容,如果未能解决你的问题,请参考以下文章

Foundation框架中的NSDateFormatter

NS前缀是啥意思?

Foundation框架知识总结

Foundation框架中的静态数组:NSArray

028 程序的控制结构小结

iOS-Foundation框架—结构体(转载)