• Foundation Kit介绍


    Cocoa实际上是由许多个不同的框架组成的,其中最常用于桌面端(OS X)应用程序的是Foundation和Application Kit。它包含了所有的用户界面对象和高级类。如果打算开发ios平台上的应用程序,那么需要用到User Interface Kit(UIKit)框架。它包含了IOS应用所需要的所有界面对象。
     
    typedef struct _NSRange
    {
         unsigned int location;
         unsigned int length;
    } NSRange;
     
    这个结构体用来表示相关事物的范围,通常是字符串里的字符范围或者数组里的元素范围。location字段存放该范围的其实位置,而length字段则是该范围内所含元素的个数。“Object-c is a      cool lanaguage”中,单词cool可以用location为17,length为4的范围来表示。location还可以用NSNotFound这个值来表示没有范围,比如变量没有初始化。
    创建新的NSRange有三种方式。
    1:NSRange range;
    range.location = 17;
    range.length = 4;
    2:NSRange range = {17, 4};
    3:Cocoa提供了一个快键函数NSMakeRange()
         NSRange range = NSMakeRange(17, 4);//好处是这个函数可以在任何想用的地方调用它
     
    CGPoint表示的是笛卡尔平面中的一个坐标(x, y)
    struct CGPoint
    {
         float x;
         float y;
    };
     
    CGSize用来存储长度和宽度
    struct CGSize
    {
         float width;
         float height;
    };
     
    Cocoa提供了一个矩形数据类型,它由坐标和大小复合而成
    struct CGRect
    {
         CGPoint orign;
         CGSize size;
    };
    Cocoa为以上三种结构提供了快键函数:CGPointMake()、CGSizeMake()和CGRectMake()。
     
    字符串:
    +  (id) stringWithFormat: (NSString*) format,….;
    height = [NSString stringWithFormat:@“your is %d”, 5];
    在声明方法时添加了加号,就是把这个方法定义为类方法(class method)。这个方法属于类对象(而不是类的实例对象),通常用于创建新的实例。称这种用来创建新对象的类方法为工厂方法(factory method)。
    stringWithFormat:就是一个工厂方法,它根据你提供的参数创建新对象。
     
    - (NSUInteger) length;//返回字符串中的字符个数
    NSUInteger length = [height length];
     
    字符串比较:
    - (BOOL) isEqualToString: (NSString*) aString;
    isEqualToString:可以用来比较接收方(receiver, 接受消息的对象)和作为参数传递过来的字符串。
     
    - (NSComparisonResult) compare: (NSString*) aString;
    要比较两个字符串,可以使用Compare:方法,接收对象传递过来的字符串逐个进行比较,它返回一个NSComparisonResult(也就是一个enum)来显示比较结果。
    enum
    {
         NSOrderedAscending = -1,
         NSOrderedSame,
         NSOrderedDescending
    };
    typedef NSInterger NSComparisonResult;
     
    compare:进行的时区分大小写的比较。
    方法compare:options:给我们更多选择权
    - (NSComparisonResult) compare: (NSString *) aString
                                            options: (NSStringCompareOptions) mask
    options参数是一个掩位码,使用位或bitwise-OR运算符(|)来添加选项标记。
    NSCaseInsensitiveSearch: 不区分大小写字符
    NSLiteralSearch: 进行完全比较,区分大小写字符
    NSNumericSearch: 比较字符串的字符个数,而不是字符串值。
    if ([things1 compare:things2 options: NSCaseInsensitiveSearch | NSNumericSearch] == NSOrderedSame)
    {
         NSLog(@“They match!”);
    }
     
    - (BOOL) hasPrefix: (NSString*) aString;//检查字符串是否以另一个字符串开头
    - (BOOL) hasSuffix: (NSString*) aString    //检查字符串是否以另一个字符串结尾
     
    - (NSRange) rangeOfString:(NSString*) aString;//想知道字符串内的某处是否包含其他字符串
     
    NSString是不可变(immutable)的,可以对它执行各种操作,如生成新的字符串、查找、比较,但不能删除字符改变它,Cocoa提供了一个NSString的子类,叫做NSMutableString,如果想改变字符串,请使用这个类。
    + (id) stringWithCapacity: (NSUInteger) capacity;//创建一个新的对象
    - (void) deleteCharactersInRange: (NSRange) aRange;方法删除字符串中的字符
     
    NSArray是一个Cocoa类,用来存储对象的有序列表,可以在NSArray中存放任意类型的对象,甚至是其他数组或字典对象。不可以存储C语言的基础类型和NSArray的随机指针,也不能存储nil。
    NSArray *array = [NSArray arrayWithObjects:@“one”, @“two”,@“three”,nil];
    NSArray *array2 = @[@“one”, @“two”, @“three"];
    使用字面量语法时不必再结尾处特意补上nil.
     
    NSEnumerator *enumerator = [array objectEnumerator];
    while(id thingie = [enumerator nextObject]){
         NSLog (@“I found %@“, thingie);
  • 相关阅读:
    mysql日期计算转换
    Mysql的DATE_FORMAT()日期格式转换
    JDBC连接池BoneCP
    JSP之三大指令
    JSP的三大指令 七大动作 九大对象
    JSP的语法
    orcale序列操作
    Orcale约束-------外键约束
    Orcale约束-------檢查約束
    Orcale约束-------主键约束
  • 原文地址:https://www.cnblogs.com/tcsong24/p/5634600.html
Copyright © 2020-2023  润新知