码迷,mamicode.com
首页 > 其他好文 > 详细

OC第四课

时间:2014-11-20 00:09:59      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:oc   对象   

主要内容:NSString、NSArray、NSNumber

一、苹果帮助文档(API)

       学会查看API对以后的编程有很好的帮助

       进入方法:

               Xcode ->Help -> Documenttion  and  API  Reference

       文档的基本信息

              1、Inherits  from 继承自

              2、Conforms  to 遵循什么协议

              3、Framework 属于什么框架

              4、Availability 什么时候可用的

              5、Declared  in 声明在什么头文件里

              6、Related  documents  相关文档

              7、simple  code  示例代码

二、字符串类

       分为不可变字符串(NSString)、可变字符串(NSMutableString)

       Foundation框架是Cocoa编程、iOS编程的基础框架,包括字符串、集合、日期、时间等基础类

       字符串、字典、数组都属于Foundation框架

       1、C语言中,字符串是由char(ASCII)字符组成

       2、OC中,字符串是由unchar(Unicode)字符组成

       不可变字符串:

              创建之后,内容和长度不可更改

       创建(三种方法):

                1、初始化方法创建          示例:NSString  *str1  = [ [ NSString  all ]  initWithFomat : @" 大家好,我是:%@  年龄:%d ",  @" 辉子 ", 21] ;

                2、便利构造器                            NSString  *str2  = [ [ NSString  stringWithFormat : @"大家好,我是%@  年龄:%d" , @" 辉子 ", 21] ;

                3、字面量                                   NSString  *str3  = @" abcdefg " ;

       NSString常用方法

                1、获取字符串长度:length       

                             示例:NSInteger  strength = [ str3  length ]  

                                        NSLog(@" %ld " , strlength) ;

                2、获取子字符串:

                             2.1从开始截取到指定位置  substringToIndex

                                        NSString  *string1 = [ @" adfafa " , substringToIndex : 3 ] ;

                                        NSLog(@" %@ " , string1) ;

                             2.2从指定位置开始截取到末尾   substringFromIndex

                                        NSString  *string2 = [ @" afafasgasg " , substringFromIndex : 5 ] ;

                                        NSLog(@" %@ " , string2) ;

                             2.3从指定位置开始截取到指定位置   substringWithRange : NSMakeRange (index , index)

                                        NSString  *string3 = [ @" afdsggdgh " , substringWithRange(3, 6) ] ;

                                        NSLog(@" %@ " , string3) ;

                3、拼接字符串:  stringByAppendingString

                                        NSString  *string4 = [ @" faasga " stringByAppendingString  @" afas " ] ;

                                        NSLog(@" %@ " , string4) ;

                4、替换字符串:   stringByReplacingOccurrencesOfString

                                        NSString  *string5 = [ @" sadfsgas "  stringByReplacingOccurrencesOfString : @" dfs " withString : @" afacdx " ] ;

                                        / / 意思是把母字符串 @"  " 中的子字符串 @" " 替换成字符串 @" "

                5、判断字符串的前缀、后缀: hasPrefix    hasSuffix

                                        BOOL  result = [ @" faff "  hasPrefix  @" f " ] ;

                                        BOOL  restult2 = [ @" sdfa " hasSuffix @" a " ] ;

                6、比较字符串:compare

                                        BOOL  result3 = [ @" faaf " compare @" safasg " ] ;

                7、字符串和数字类型转换:intValue   floatValue    doubleValue

                                        NSInteger  a = [ @" 22 "  intValue ] ;

        可变字符串(NSMutableString)

                NSMutableString(可变字符串)是NSString(不可变字符串)的子类,该类是一个动态的可改变的字符串。可以进行增删改等操作

        常用方法

                1、字符串的创建

                                       NSMutableString  *mu = [ NSMutableString  stringWithFomat : @" afsdfa " ] ;

                2、拼接字符串  appendString

                                       [ mu  appendString : @" asfa " ] ;

                3、插入字符   insertString    atIndex

                                       [ mu  insertString : @" fs "  atIndex : @" asd " ] ;

                4、删除字符串  deleteCharactersInRange

                                       [ mu  deleteCharactersInRange : NSMakeRange(0 , 3) ] ;

                5、设置字符串为空   setString

                                       [ mu  setString : @" " ] ;

         不可变字符串和可变字符串的区别:

                 1、不可变字符串的修改,本身就是得到一个新的字符串

                 2、不可变字符串的修改以String开头,有返回值

                 3、可变字符串的修改没有返回值,修改原字符串

三、数组

       存放数据的容器都称为集合(collection)

       数组是有序集合,只能存放对象,数组有下标的概念,通过下标获取元素

       数组同样分为可变数组、不可变数组

       创建方法同样有三种:

              1、初始化方法     示例:NSArray  *array1 = [ [ NSArray  alloc ]  initWithObjects : @" 我是 " , @" 辉子 " , nil ] ;

              2、便利构造器                NSArray  *array2 = [ NSArraay  arrayWithObjects : @" 大家好 " , nil ] ;

              3、字面量                       NSArray  *array3 = [ @" Hello " , @" Everybody " ]

       不可变数组:

       常用方法

              1、获取元素个数    count 方法

                           NSIteger  a = [ array1  count ] ;

              2、根据元素获取下标(Index)        indexOfObject 方法

                          NSString  *b = [ array1  indexOfObject : @" 我是 " ] ;

       可变数组(NSArray的子类,继承NSArray所有的方法):

       创建可变数组:NSMutableArray  *mutable = [ NSMutableArray  arrayWithObjects : @" asdf " , @" qwer " , @" zxcv " , nil ] ;

       常用方法:

              1、添加元素       addObject

                           [ mutable  addObject : @" afagh " ] ;

              2、插入元素       insertObject

                           [ mutable  insertObject : @" xegdx "   atIndex : 2 ] ;

                           / / 在下标为2处添加元素

              3、删除元素      removeObjectAtIndex(删除指定位置的元素)

                                        removeAllObjects(删除全部元素)

                           [ mutable  removeObjectAtIndex : 2 ] ;

                           [ mutable  removeAllObjects]

              4、替换元素       replaceObjectAtIndex

                           [ mutable  replaceObjectAtIndex : 2 ] ;

              5、获取首元素、尾元素     firstObject         laseObject

                           [ mutable  firstObject ] ; 

                           [ mutable  lastObject ] ;

              6、判断数组中是否包含某元素      containsObject

                           [ mutable  containsObject : @" asdf " ] ;

四、值对象(NSNumber)

       数组只能存放对象,那么如何存储整形或者结构体呢?

       存储:将整型或者结构体转换为对象,在将对象存储到数组中

       读取:先读取对象,在将对象还原整为型或结构体

       NSNumber完成数值标量和对象类型的转换

       基本类型(int、float等)转换为NSNumber

       NSNumber转换为基本类型(int、float等)

OC第四课

标签:oc   对象   

原文地址:http://blog.csdn.net/phui93/article/details/41280169

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!