OC学习笔记之Foundation框架NSNumber、NSValue和NSDate(转)
OC数组类NSArray,它只能存放 OC的对象,对于基本的数据类型确无能为力,但是实际编程中经常要把基本的数据如int、float,结构体存放的OC数组中,怎么办?这里的 NSNumber就有用了,它能够把基本数据类型包装成OC对象。
// 将整形包装成OC对象 NSNumber *num1 = [NSNumber numberWithInt:120]; // 将浮点形包装成OC对象 NSNumber *num2 = [NSNumber numberWithDouble:0.5]; // 把包装后的数据存放到OC数组中 NSArray *array = @[@"年龄",num1]; // 遍历数组 for (id obj in array) { NSLog(@"%@", obj); }
// 将NSNumber类型的对象还原成基本数据类型 int age = [num1 intValue]; double a = [num2 doubleValue]; 还可以 使用编译器特性快速包装一个基本数据: // 快速包装 @120; @0.5; @NO; // 使用快速包装,再存放到数组中 NSArray *array2 = @[@"hello",@100, @YES, @0.3, @'H']; 二、NSValue
NSValue和NSNumber相似,具体来说前者是后者的父类。NSValue可以包装复杂的基本数据类型,如结构体,枚举。
int main()
{
// OC结构体 CGPoint point = CGPointMake(11, 12); // 将结构体包装成OC对象 NSValue *val = [NSValue valueWithPoint:point]; // 将包装后的OC对象存放到OC数组 NSArray *array = @[val]; NSLog(@"%@", array); return 0; }
这个类是与时间相关的,日期的格式化。
// 创建日期对象 NSDate *date = [NSDate date]; // 日期格式化类 NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; // y 年 M 月 d 日 // m 分 s 秒 H (24)时 h(12)时 formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss"; // 固定写法,不能随便写 // 将日期格式化成字符串对象 NSString *str = [formatter stringFromDate:date]; NSLog(@"%@", str); // 格式化的参数都有固定含意,不能随意写。上面是将日期格式化输出,下面再来将字符串中的日期 // 指定日期为 NSString *time = @"2022/05/01 13:30"; // 创建日期格式化对象 NSDateFormatter *formatter2 = [[NSDateFormatter alloc] init]; // 格式化日期 formatter2.dateFormat = @"yyyy/MM/dd HH:mm"; NSDate *date2 = [formatter2 dateFromString:time]; NSLog(@"%@", date2);
转载于:https://www.cnblogs.com/yzjxdz/p/4853126.html
OC学习笔记之Foundation框架NSNumber、NSValue和NSDate(转)相关推荐
- (转载)OC学习篇之---Foundation框架中的NSDirctionary类以及NSMutableDirctionary类
昨天学习了Foundation框架中NSArray类和NSMutableArray类,今天来看一下Foundation框架中的NSDirctionary类,NSMutableDirctionary类, ...
- java mvc框架代码_JAVA技术学习笔记:SpringMVC框架(内附入门程序开发代码)
原标题:JAVA技术学习笔记:SpringMVC框架(内附入门程序开发代码) JavaEE体系结构包括四层,从上到下分别是应用层.Web层.业务层.持久层.Struts和SpringMVC是Web层的 ...
- Hadoop学习笔记—18.Sqoop框架学习
Hadoop学习笔记-18.Sqoop框架学习 一.Sqoop基础:连接关系型数据库与Hadoop的桥梁 1.1 Sqoop的基本概念 Hadoop正成为企业用于大数据分析的最热门选择,但想将你的数据 ...
- Hadoop学习笔记—15.HBase框架学习(基础知识篇)
Hadoop学习笔记-15.HBase框架学习(基础知识篇) HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase ...
- 设计模式学习笔记——原型(Prototype)框架
设计模式学习笔记--原型(Prototype)框架 @(设计模式)[设计模式, 原型模式, prototype] 设计模式学习笔记原型Prototype框架 基本介绍 原型案例 类图 实现代码 Pro ...
- 前端学习笔记:Bootstrap框架入门
前端学习笔记:Bootstrap框架入门 一.Bootstrap概述 1.基本信息 Bootstrap,来自 Twitter,是目前很受欢迎的前端框架.Bootstrap 是基于 HTML.CSS. ...
- Hadoop学习笔记—16.Pig框架学习
Hadoop学习笔记-16.Pig框架学习 一.关于Pig:别以为猪不能干活 1.1 Pig的简介 Pig是一个基于Hadoop的大规模数据分析平台,它提供的SQL-LIKE语言叫Pig Latin, ...
- [OC学习笔记]自动引用计数
一.什么是自动引用计数 自动引用计数(ARC,Automic Reference Counting)是指内存管理中对引用采取自动计数的技术. 在Objective-C中采用Automic Refere ...
- Python学习笔记--10.Django框架快速入门之后台管理admin(书籍管理系统)
Python学习笔记--10.Django框架快速入门之后台管理 一.Django框架介绍 二.创建第一个Django项目 三.应用的创建和使用 四.项目的数据库模型 ORM对象关系映射 sqlite ...
最新文章
- SAP QM初阶之事务代码CR05查询QM Work Center List
- 数据库设计中的14个技巧
- 2021年11月软考准考证打印时间及操作步骤
- 处于计算机学科的基础地位,谈谈离散数学在计算机学科中的地位和作用(原稿)...
- hadoop实训报告总结及体会_管理工程学院举办电子商务实训表彰大会
- linux 注册并配置
- jsp项目实战--项目介绍
- 《深入浅出统计学》读书笔记
- OSGEARTH三维地形开源项目
- AirPlay to Mac 如何工作以及使用它需要什么?
- 使用HDMI转DVI线组双屏
- VMware虚拟机中激活Windows Server 2008的具体步骤
- 直通车怎么能不推广计算机设备,直通车智能推广具体怎么设置?如何操作?
- 颜色代码表(#号开头)
- 计算机病毒与防治说课稿,计算机病毒与防治说课稿.doc
- 仿ios相机apk_iCamera摄像头下载|iCamera仿苹果相机安卓版v4.0下载 _当游网
- JS 今天/明天的日期
- 从帝王之术中窥探天机
- Flutter访问webservice
- C语言遍历文件目录:readdir,opendir
热门文章
- Dockerfile springboot项目拿走即用,将yml配置文件从外部挂入容器
- Ubuntu18彻底删除MySQL5.7数据库
- androidstudio判断手指滑动方向_方向盘的黑科技有多“黑”
- 回顾 2018,展望 2019
- 关于某日访问次数最多的IP的topK问题的三种解法
- 数据结构与算法——线性结构——线性表及其表示
- SpringBoot (五) :SpringBoot整合mybatis
- Android数据持久化:文件存储
- Java中类、常量、变量、方法名等命名规则
- 如何在GPU上优化卷积