`
反求诸己
  • 浏览: 543084 次
  • 性别: Icon_minigender_1
  • 来自: 湖南娄底
社区版块
存档分类
最新评论

OC 常用数据类型之间的转换

 
阅读更多

1: NSString  <==> NSInteger

 

 

NSInteger转化 NSString类型:
      [ NSString  stringWithFormat:  @"%d" , NSInteger];
NSString转化 NSInteger类型:
      NSInteger = [ NSString   intValue ]

2 : NSString <==> NSNumber
NSNumber 转换 NSString 类型:

  NSNumber *indexNum = [NSNumber numberWithInt:index];

UITextView *login = (UITextView*)[[UIView alloc] viewWithTag:1];
NSNumberFormatter *formater = [[NSNumberFormatter alloc ] init];
[login setText:[formater stringFromNumber:indexNum]];
NSString 转换为 NSNumber 类型:
[NSString stringWithFormat]
3、 int,NSInteger,NSUInteger,NSNumber 
1.当需要使用int类型的变量的时候,可以像写C的程序一样,用int,也可以用NSInteger,但更推荐使用 NSInteger,因为这样就不用考虑设备是32位的还是64位的
2. NSUInteger是无符号的 ,即没有负数,NSInteger是有符号的。

3.有人说既然都有了NSInteger等这些基础类型了为什么还要有NSNumber?它们的功能当然是不同的。
 NSInteger是基础类型,但是NSNumber是一个类 。如果想要在NSMutableArray里存储一个数值,直接用NSInteger是不行的,比如在一个NSMutableArray里面这样用:
  1. NSMutableArray *array = [[NSMutableArray alloc]init];  
  2.     [array addObject:[ NSNumber numberWithInt :88]];  
4.NSString 与 int ,float,double,NSInteger之间的转换

    NSString *teststring = @"32.54" ;

    int i = [teststring intValue ];

    float i1 = [teststring floatValue ];

    double i2 = [teststring doubleValue ];

    NSInteger i3 = [teststring integerValue ];

    

    NSString *tostring = nil ;

    tostring = [ NSString stringWithFormat: @"%d" ,i];

    NSLog ( @"tostring-int:%@",tostring);

    tostring = [ NSString stringWithFormat: @"%.3f" ,i1];

    NSLog ( @"tostring-float:%@",tostring);

    tostring = [ NSString stringWithFormat: @"%e" ,i2];

    NSLog ( @"tostring-double:%@",tostring);

 

NSNumber转NSString:

假设现有一NSNumber的变量A,要转换成NSString类型的B

方法如下:

NSNumberFormatter * numberFormatter = [[NSNumberFormatter allocinit ];

B = [numberFormatter stringFromNumber :A ];

[numberFormatter release ];

 

nsstring和float 还有int之间的转换

 

NSString *tempA = @"123";

NSString *tempB = @"456";

 

1,字符串拼接

NSString *newString = [NSString stringWithFormat:@"%@%@",tempA,tempB];

 

2,字符转int

int intString = [newString intValue];

 

3,int转字符

NSString *stringInt = [NSString stringWithFormat:@"%d",intString];

 

4,字符转float

float floatString = [ newString floatValue];


5,float转字符

NSString *stringFloat = [NSString stringWithFormat:@"%f",intString];

///////
  1. NSString *a = [[NSString alloc] initWithString : @"5, 10, 2, 0, 0, 0.01, 1, 0.05, 0, 0, 0"];
  2. NSArray *bullteData = [a componentsSeparatedByString:@","];
  3. [a release];
  4. for (int i = 0; i < [bullteData count]; i++) {
  5. NSLog(@"%f",[[NSString stringWithFormat:@"%@",[bullteData objectAtIndex:i]] floatValue]);
  6. }
  1. NSString *a = [[NSString alloc] initWithString : @"5, 10, 2, 0, 0, 0.01, 1, 0.05, 0, 0, 0"];  
  2. NSArray *bullteData = [a componentsSeparatedByString:@","];  
  3. [a release];  
  4. for (int i = 0; i < [bullteData count]; i++) {  
  5. NSLog(@"%f",[[NSString stringWithFormat:@"%@",[bullteData objectAtIndex:i]] floatValue]);  
  6. }  
将字符串存到数组中,在读取的时候转换成需要的类型。
分享到:
评论
1 楼 hhb19900618 2015-02-27  
NSString <==> NSNumber 之前都没注意这样使用!不错,学习一下

相关推荐

    oc-数组倒叙

    在Objective-C(简称OC)中,数组是一种常用的数据结构,用于存储多个有序的元素。当你需要将数组中的元素顺序反转,即实现数组的倒序,可以采用多种方法。本篇文章将详细讲解如何在OC中实现数组倒序的操作。 首先...

    iOS:demo 小功能 OC实现常用数据结构

    本篇将详细介绍在OC中实现常用数据结构的相关知识点。 1. 数组(Array): OC中的数组主要分为两种:NSArray和NSMutableArray。NSArray是不可变的,一旦创建,就不能修改元素。而NSMutableArray则是可变的,支持...

    oc中数组排序

    除了使用比较器块,OC还提供了基于C语言的`qsort`函数,适用于对基本数据类型的数组进行排序。但请注意,这种方法不适用于Objective-C的对象数组,因为它们涉及到指针的比较,而不是对象的实际内容。 五、性能考虑 ...

    oc字符串方法代码展示

    转换字符串与基础数据类型是常见的需求。`intValue`, `floatValue`, `doubleValue`等方法可以将字符串转换为对应的数值类型。反之,`stringWithFormat:`可以将数值格式化成字符串,如`NSString *numberStr = ...

    OC-Json转模型Dictionary(Plist嵌套模型)

    在iOS开发中,数据交换和存储经常涉及到JSON与模型对象之间的转换。Objective-C(简称OC)作为苹果平台的主要编程语言,提供了多种方式来处理这种转换。本篇文章将深入探讨如何在OC中将JSON数据转化为模型Dictionary...

    Ios学习代码:OC课程代码

    NSFoundation是Objective-C的基础框架,提供了诸如NSArray、NSDictionary、NSString等常用数据结构和基本的系统服务。 10. **UI设计** 在iOS开发中,Objective-C通过UIKit框架提供了丰富的用户界面元素,如...

    (OC)归档解档(嵌套模型)(模型数组)

    归档和解档是OC中的重要概念,主要用于数据持久化,即将内存中的对象转换为磁盘上的二进制数据,以便在后续的程序运行中能够恢复这些对象。这个过程在处理模型数组和嵌套模型时尤其关键,因为它们通常包含大量的结构...

    OC-YYModel(字符串)

    3. **自动类型转换**:YYModel能够自动处理各种基础类型(如NSString、NSNumber、NSDate等)与JSON之间的转换,同时支持自定义类型的转换。 4. **深拷贝支持**:YYModel还提供了对象的深拷贝功能,可以快速复制一个...

    TyeUnityiOS结合与交互OC和Swift两种方式

    5. **Swift的类型转换**: 由于Swift与Objective-C之间的类型系统不完全相同,需要特别注意数据类型的转换,比如字符串、数组、字典等。 在实际项目中,可能还需要处理其他一些问题,如资源加载、性能优化、内存管理...

    OC-model(YYModel)

    1. **属性类型**:YYModel只支持基本数据类型、NSString、NSNumber、NSData、NSURL、NSDate、NSArray、NSSet、NSDictionary以及实现了YYModel协议的对象。 2. **空值处理**:对于可选属性,YYModel会将JSON中的null...

    oc II 代码

    12. MVC(Model-View-Controller):这是iOS和macOS开发中最常用的架构模式,理解如何分离数据模型、视图和控制器是至关重要的。 在"code-20130916"这个压缩包中,很可能是包含了这些知识点相关的示例代码。通过...

    ios Excel多种表格纯代码

    在iOS应用开发中,使用Objective-C(OC)创建Excel风格的多类型图表是一项常见的需求,尤其是在数据可视化领域。"ios Excel多种表格纯代码"这个项目着重于如何在不依赖任何第三方库的情况下,利用OC实现包括曲线图表...

    spark大数据分析核心概念技术及实践

    - **DataFrame**:基于Spark SQL的表结构,提供了更高级别的抽象,支持更多SQL操作和数据类型。 - **Dataset**:DataFrame的类型安全版本,结合了RDD的性能和DataFrame的便利性,支持泛型编程。 2. **Spark架构**...

    iOS源生SQLite3基本操作(Swift-OC混编)

    在iOS应用开发中,SQLite3是一个常用的轻量级数据库,用于存储和检索应用程序的数据。它是一种关系型数据库管理系统,能够支持多种操作系统,包括iOS。在本教程中,我们将探讨如何在Swift和Objective-C混合编程环境...

    转换器-OC::D

    7. **Foundation框架**:这是Objective-C的基础库,提供了很多常用的数据类型和操作,如NSArray、NSDictionary、NSString等。 至于Pascal的元素,可能是由于Objective-C的语法和Pascal有某些相似之处,比如它们都...

    WS-OC-Foundation:OC基础框架

    1. **数据类型与基础对象**:Foundation框架提供了一些基本的对象,如NSNumber,它用于封装基本的C语言数据类型,如int、float等。此外,NSNull用于表示nil值,NSArray和NSMutableArray是不可变和可变数组,...

    常用74系列芯片的大全

    - **三态门**:这是一种能够在三种状态之间切换的门电路,包括高阻抗状态、高电平状态和低电平状态,主要用于数据传输控制等场合。 通过了解74系列芯片的不同类型及其特性,工程师可以更加灵活地选择适合特定应用...

    IOS视频教程

    OC基础语法:包括变量、基本数据类型、数据类型转换、运算符和表达式、条件语句(if、for、while、switch)、控制流(break、continue)、代码规范和语法复习。这些是编程语言的基础,对理解OC编程至关重要。 二、...

    Runtime 实现字典转模型的自动转换.zip

    8. **字典验证**:在自动转换过程中,还需要考虑字典中的键是否存在于模型的属性中,以及数据类型是否匹配,防止因无效数据导致的错误。 9. **异常处理**:在实现自动转换时,需要捕获并处理可能出现的异常,如无法...

    常用数字集成电路应用资料查询

    本文将根据提供的标题“常用数字集成电路应用资料查询”、描述“数字集成电路功能查询,管脚,逻辑等实用资料”,以及部分内文信息,详细解析几种常用的数字集成电路的功能、管脚配置及其应用场景。 ### 与门和缓冲...

Global site tag (gtag.js) - Google Analytics