/*===========================NSNumber数值对象=========================*/

    // 将基本数据类型保存为NSNumber 对象类型
NSNumber *intNum = [NSNumber numberWithInt:];
NSLog(@"num = %@",intNum);
NSNumber *floatNum = [NSNumber numberWithFloat:10.32];
NSLog(@"floatNum = %@",floatNum);
NSNumber *doubleNum = [NSNumber numberWithDouble:345.567890];
NSLog(@"doubleNum = %@",doubleNum);
NSNumber *boolNum = [NSNumber numberWithBool:YES];
NSLog(@"booleNum = %@",boolNum); // 将NSNumber 对象类型还原成基本数据类型
int value1 = [intNum intValue];
float value2 = [floatNum floatValue];
double value3 = [doubleNum doubleValue];
BOOL value4 = [boolNum boolValue]; // 简介写法
NSNumber *num = @;
NSNumber *num1 = @3.14;
NSNumber *num2 = @343.33434344;
NSNumber *num3 = @YES; NSLog(@"num = %@",num); /*===========================NSValue对象类型=========================*/ /* NSNumber 用来保存基本数据类型,但是像结构体这样的数据类型就保存不了了,
所以得使用 NSValue 来保存结构体这样的数据类型 OC 常用的结构体类型:
NSRange(表示范围) 、NSPoint(表示坐标位置)、NSSize(表示尺寸)、
NSRect(表示一个位置和尺寸)
*/ // 方式一:
// 把结构体保存为NSValue 对象类型
CGPoint point = {,};
NSValue *value = [NSValue value:&point withObjCType:@encode(CGPoint)];
// NSArray *array = @[value];
NSLog(@"value = %@",value); // getValue 还原结构体
CGPoint point1;
[value getValue:&point1];
NSLog(@"point.x = %.2f",point1.x);

本文GitHub地址https://github.com/zhangkiwi/iOS_SN_NSNumber

iOS-OC-基础-NSNumber常用方法的更多相关文章

  1. iOS 阶段学习第11天笔记(OC基础知识)

    iOS学习(OC语言)知识点整理 一.OC基础知识 1)#import  用于导入头文件,预处理阶段加载引用,只加载一次. 2)OC 依赖于Foundation框架下的头文件Foundation.h, ...

  2. iOS开发OC基础:Xcode中常见英文总结,OC常见英文错误

    在开发的过程中难免会遇到很多的错误,可是当看到系统给出的英文时,又不知道是什么意思.所以这篇文章总结了Xcode中常见的一些英文单词及词组,可以帮助初学的人快速了解给出的提示.多练习,就肯定能基本掌握 ...

  3. iOS - OC NSNumber 数字

    前言 @interface NSNumber : NSValue @interface NSDecimalNumber : NSNumber 将基本数据类型包装成 OC 对象 1.NSNumber 与 ...

  4. OC基础笔记目录

    OC基础(1) Objective-C简介 OC和C对比 第一个OC程序 面向对象思想 OC基础(2) 类与对象 类的设计 第一个OC类 对象方法的声明和实现 类方法的声明和实现 OC基础(3) 对象 ...

  5. OC基础16:复制对象

    "OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.浅复制即是指针赋值,复制对象的修改会影 ...

  6. ios面试基础

    1.#import和#include的差别 @class? @class一般用于头文件里须要声明该类的某个实例变量的时候用到,在m文 件中还是须要使用#import 而#import比起#includ ...

  7. OC基础--数据类型与表达式

    前言 做iOS开发有3年了,从当初的小白到现在,断断续续看过很多资料,之前也写过一些博文来记录,但是感觉知识点都比较凌乱.所以最近准备抽时间把iOS开发的相关知识进行一个梳理,主要分为OC基础.UI控 ...

  8. IOS开发基础知识碎片-导航

    1:IOS开发基础知识--碎片1 a:NSString与NSInteger的互换 b:Objective-c中集合里面不能存放基础类型,比如int string float等,只能把它们转化成对象才可 ...

  9. iOS - OC 面向对象语法

    1.类 1)根类:因为类 NSObject 是层次结构的最顶层,因此称为根类. 可以将类称为子类(subclass)和父类(superclass),也可以将类称为子类和超类. 2)分类/类别(cate ...

  10. iOS 面试基础题目

    转载: iOS 面试基础题目 题目来自博客:面试百度的记录,有些问题我能回答一下,不能回答的或有更好的回答我放个相关链接供参考. 1面 Objective C runtime library:Obje ...

随机推荐

  1. silverlight 生产图表(动态图表类型,Y轴数量) .xaml.cs文件

    silverlight 页面后台方法 .xaml.cs文件 public void CreateChart(Grid oGrid, ObservableCollection<ListItem&g ...

  2. VS2015打开工程文件卡死

    今天偶然遇到VS2015打开某个工程文件卡死,一直等待无响应: 关闭VS,打开另外一个工程文件是正常的: 开始怀疑是工程文件有问题,用VS2013打开是正常的,排除工程文件问题: 删除对应工程文件下的 ...

  3. java递归删除指定目录下的文件和文件夹

    public static boolean deleteFolder(String delDir) { File delFolder = new File(delDir); File[] delFil ...

  4. birt报表图标中文显示为框框的解决方法

    birt报表中图标部分的中文显示为框框,其他部分中文显示正常 解决办法:修改jdk中的字体设置/jdk1.6.0_13/jre/lib /fonts/fonts.dir 1.将宋体字体copy到/jd ...

  5. log在线生成器 html中如何设置浏览器中标题前的logo

    制作logo的地址:http://www.logomaker.com.cn/ 设置网站logo的方法 在<head></head>标签之间输入<link rel=&quo ...

  6. git merge –squash介绍

    Git相对于CVS和SVN的一大好处就是merge非常方便,只要指出branch的名字就好了,如: $ git merge another $ git checkout another # modif ...

  7. tableViewCell 的删除按钮

    - (UITableViewCellEditingStyle)tableView:(UITableView*)tableView editingStyleForRowAtIndexPath:(NSIn ...

  8. Effective Java2读书笔记-类和接口(四)

    第19条:接口只用于定义类型 这一条就举了一个反例,说有些接口中只包含常量.这是对接口的不良使用.要实现相同的功能,应该使用不可实例化的工具类(第4条说过). public class Physica ...

  9. C语言复习--实现栈

    C #include <stdio.h> #include <stdlib.h> #define STACK_SIZE 100 typedef char TYPE; typed ...

  10. shell 脚本FTP自动上传文件

    下面的脚本 会把本地的文本文件压缩后, 上传到FTP服务器上. 里面有一点小逻辑, 就是上传的文本文件 是 日期时间.txt 形式的, 一天写一个日志文件, 今天的文件不上传, 只上传 老的日志文件. ...