OC学习笔记

import和include的区别

import引入的头文件,可以防止重复包含

include引入的头文件通过预处理指令防止重复包含,如果没有写预处理指令,则不能防止重复包含。



#pragma mark的使用:

对代码进行分类,方便查找和管理。

#pragma - 

在代码块列表上添加一根横线。 


NSString 字符串长度计算方法:

int main(int argc, const char * argv[]) {

    @autoreleasepool {


        NSString *str = @"BasketBall Never Stop!";

        NSUInteger length1 = [str length];

        NSLog(@"长度=%ld",length1);

    }

    return 0;

}


OC对象练习:

#import <Foundation/Foundation.h>

@interface Person:NSObject

{ @public

    NSString *_name;

    int _age;

    float _weight;

}

@end

@implementation Person

-(void)eat:(NSString*) foodName{

    _weight += 0.6f;

    NSLog(@"您吃了%@",foodName);

}

-(void)walk:(int) num{

    _weight -= num/100 * 0.2f;

    NSLog(@"您走了%d步,当前体重为%.2f",num,_weight);

}

@end


int main(int argc, const char * argv[]) {

    @autoreleasepool {

     Person *p = [Person new];

    //设置对象的实例变量值

        p ->_name = @"摆摆";

        p ->_age = 18;

        p ->_weight = 180.0f;

        

        [p eat:@"麻辣烫"];

        [p eat:@"回锅肉"];

        p ->_age = 18;

        [p walk:888];

    }

    return 0;

}


  字符串比较函数:

1)字符串比较大小
字符串根据排列顺序的不同,会有大小的差异,如果我们要比较两个字符串的大小的话,可以使用compare方法
compare 方法的返回结果有三种:
  
NSOrderedAscending    升序(前面字符串小于后面字符串)

NSOrderedSame         相等

NSOrderedDescending   降序(前面字符串大于后面字符串)
 
 str1 > str2        NSOrderedDescending        1
 str1 < str2        NSOrderedAscending        -1
 str1 == str2       NSOrderedSame              0
 
2)比较字符串大小,指定条件
 
如果忽略大小写的话,可以在options 里面加一个参数 NSCaseInsensitiveSearch;具体如下:NSComparisonResult result2 = [str1 compare:str2 options:NSCaseInsensitiveSearch];
 
    常见的有三个:
     NSCaseInsensitiveSearch = 1,(不区分大小写字符)
     NSLiteralSearch = 2,(进行完全比较,区分大小写。<默认>)
     NSNumericSearch = 64,(比较字符串的字符个数,而不是字符值)
 
3)判断字符串是否相等
 
     思考&实现:
    
        字符串判断相等是否能够使用“==”进行判断?
 
        //“==” 不能够判断字符串是否相等的
        //判断字符串内容是否真正相等,使用的是isEqualToString:
        //isEqualToString: 是区分大小写的
 
 
 */




#import <Foundation/Foundation.h>




void test(){
    NSString *str1 = @"abc";    //a 97
    NSString *str2 = @"Abc";    //A 65
    
    //取出每个字符的ASCII码值,比较ASCII码值的大小
    //compare 比较大小
    //compare 默认的区分大小写
    //compare 这个函数不能增加条件
    //       NSComparisonResult result = [str1 compare:str2];
    
    //比较的时候不区分大小写的方法 NSCaseInsensitiveSearch,还参考字符的个数NSNumericSearch
    //
    NSComparisonResult result = [str1 compare:str2 options:NSCaseInsensitiveSearch | NSNumericSearch];
    
    
    //
    switch (result) {
        case NSOrderedAscending:
            NSLog(@"str1 < str2  升序");
            break;
        case NSOrderedDescending:
            NSLog(@"str1 > str2  降序");
            break;
        case NSOrderedSame:
            NSLog(@"str1 == str2  相等");
            break;
            
        default:
            break;
    }


    
}




int main(int argc, const char * argv[]) {
    @autoreleasepool {
        
        NSString *str1 = @"abc";    //a 97
        NSString *str2 = @"Abc";    //A 65
        NSString *str3 = [NSString stringWithFormat:@"Abc"];
        
        //地址的比较
        //“==” 不能够判断字符串是否相等的
        //判断字符串内容是否真正相等,使用的是isEqualToString:
        //isEqualToString: 是区分大小写的
        if ([str1 isEqualToString: str3]) {
            NSLog(@"相等");
        }else{
            NSLog(@"不相等");
        }
    }
    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值