Object-C中的数字对象
#import <Foundation/Foundation.h> int main(int argc, const char * argv[])
{ @autoreleasepool { /*
Object-C中的数字对象:
1.int,float,long,double等都是Object-C中的基本数据类型,不是对象,也就是说不能够向他们发送消息。
2.有时需要将值类型作为对象使用,如NSArray,要求存储的必须是对象,因此不能直接将基本数据类型放入数组。
3.如果需要存储基本数据类型(包括char),可以使用NSNumber类。
*/ NSNumber *intNumber,*longNumber,*floatNumber,*charNumber,*doubleNumber; //int型值
intNumber=[NSNumber numberWithInt:100];
NSLog(@"%i",[intNumber intValue]); //long型值
longNumber=[NSNumber numberWithLong:0xabcdef];
NSLog(@"%lx",[longNumber longValue]); //char型值
charNumber=[NSNumber numberWithChar:'A'];
NSLog(@"%c",[charNumber charValue]); //float型值
floatNumber=[NSNumber numberWithFloat:100.00];
NSLog(@"%g",[floatNumber floatValue]); //double型值
doubleNumber=[NSNumber numberWithDouble:12345e+15];
NSLog(@"%lg",[doubleNumber doubleValue]); //验证两个值是否相等
if([intNumber isEqualToNumber:floatNumber]==YES)
{
NSLog(@"%i和%g比较,值相等",[intNumber intValue],[floatNumber floatValue]);
}
else
{
NSLog(@"%i和%g比较,值不等",[intNumber intValue],[floatNumber floatValue]);
} //两个值比较大小
if([intNumber compare:floatNumber]==NSOrderedAscending)
{
NSLog(@"%i和%g比较,第一个数<第二个数",[intNumber intValue],[floatNumber floatValue]);
}
else
{
NSLog(@"%i和%g比较,第一个数≥第二个数",[intNumber intValue],[floatNumber floatValue]);
}
}
return 0;
}
输出结果:
2014-02-12 21:59:34.847 04.数字[1229:303] 100
2014-02-12 21:59:34.849 04.数字[1229:303] abcdef
2014-02-12 21:59:34.849 04.数字[1229:303] A
2014-02-12 21:59:34.850 04.数字[1229:303] 100
2014-02-12 21:59:34.850 04.数字[1229:303] 1.2345e+19
2014-02-12 21:59:34.850 04.数字[1229:303] 100和100比较,值相等
2014-02-12 21:59:34.851 04.数字[1229:303] 100和100比较,第一个数≥第二个数
Program ended with exit code: 0
Object-C中的数字对象的更多相关文章
- 重写Object类中的equals方法
Object是所有类的父亲,这个类有很多方法,我们都可以直接调用,但有些方法并不适合,例如下面的student类 public class Student { //姓名.学号.年纪 private S ...
- [Effective JavaScript 笔记]第47条:绝不要在Object.prototype中增加可枚举的属性
之前的几条都不断地重复着for...in循环,它便利好用,但又容易被原型污染.for...in循环最常见的用法是枚举字典中的元素.这里就是从侧面提出不要在共享的Object.prototype中增加可 ...
- 【Java基础之Object类(一)】Java中Object类中的所有方法(toString、equals、hashCode、clone、finalize、wait和notify等)详解(转载)
java中的hashcode.equals和toString方法都是基类Object的方法. 首先说说toString方法,简单的总结了下API说明就是:返回该对象的字符串表示,信息应该是简明但易于读 ...
- Object类中getClass()
Object类中包含一个方法名叫getClass,利用这个方法就可以获得一个实例的类型类.类型类指的是代表一个类型的类,因为一切皆是对象,类型也不例外,在Java使用类型类来表示一个类型.所有的类型类 ...
- Object类中方法详解
目录 概述 hashCode方法 getClass方法 toString方法 equals方法 clone方法 finalize方法 概述 Object 是类层次结构的根类.每个类都使用 Object ...
- -1-5 java 多线程 概念 进程 线程区别联系 java创建线程方式 线程组 线程池概念 线程安全 同步 同步代码块 Lock锁 sleep()和wait()方法的区别 为什么wait(),notify(),notifyAll()等方法都定义在Object类中
本文关键词: java 多线程 概念 进程 线程区别联系 java创建线程方式 线程组 线程池概念 线程安全 同步 同步代码块 Lock锁 sleep()和wait()方法的区别 为什么wait( ...
- Object类中通用方法之:toString()方法
1.Java所有的对象都是Object类的实例,都可以直接调用该类中定义的方法,这些方法称为通用方法 2.toString()方法即为Object类中定义的通用方法之一 3.平时我们如果在控制台直接打 ...
- wait(),notify(),notifyAll()用来操作线程为什么定义在Object类中?
这些方法存在于同步中: 使用这些方法必须标识同步所属的锁: 锁可以是任意对象,所以任意对象调用方法一定定义在Object类中. Condition是在java 1.5中才出现的,它用来替代传统的Obj ...
- Object类中常见的方法,为什么wait notify会放在Object里边
toString():输出一个对象的地址字符串(哈希code码):可以通过重写toString方法,获取对象的属性! equals():比较的是对象的引用是否指向同一块内存地址, 重写equals() ...
随机推荐
- sim usim Uim 区别
SIM卡(Subscriber Identity Module) ,即用户识别卡,是全球通数字移动电话的一张个人资料卡.它采用A 级加密方法制作,存储着用户的数据.鉴权方法及密钥,可供GSM系统对用户 ...
- spm教程
1.spm初学者教程:http://www.ernohermans.com/wp-content/uploads/2011/11/spm8_startersguide.pdf 2.spm官方mannu ...
- C#笔试题面试题锦集(全)总20篇
前些时候找过一次工作,收集了很多不错的笔试题目.共享一下:) C#笔试题面试题锦集(20) 微软应试题目 (2010-01-15 21:32) C#笔试题面试题锦集(19) 雅虎C#题目 (2010- ...
- 【转载】Redis Sentinel 高可用服务架构搭建
作者:田园里的蟋蟀 出处:http://www.cnblogs.com/xishuai/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接. 阅读 ...
- jquery动态创建表格
1.代码实例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...
- 【iOS开发-90】CALayer图层:自己定义图层,图层的一些动画
(1)效果 (2)代码 http://download.csdn.net/detail/wsb200514/8261547 (3)总结 --能够自己定义图层,尤其须要对图片进行圆角裁剪. --图层的动 ...
- iOS: iOS各种设备信息获取
Author:si1ence Link:http://www.jianshu.com/p/b23016bb97af 为了统计用户信息.下发广告,服务器端往往需要手机用户设备及app的各种信息,下面讲述 ...
- 海康ipc onvif抓包分析
型号:半球DS-2CD2122FWD-IWS 子码流的地址(101+1): rtsp://admin:hik12345@10.7.36.222:554/Streaming/Channels/102?t ...
- Minimum edit distance(levenshtein distance)(最小编辑距离)初探
最小编辑距离的定义:编辑距离(Edit Distance),又称Levenshtein距离.是指两个字串之间,由一个转成还有一个所需的最少编辑操作次数.许可的编辑操作包含将一个字符替换成还有一个字符. ...
- Java网络编程-URI和URL
前提 前面的一篇文章<Java中的Internet查询>分析完了如何通过IP地址或者主机名确定主机在因特网中的地址.任意给定主机上可能会有任意多个资源,这些资源需要有标识符方便主机之间访问 ...