ios初学的一些小知识(大手勿喷)

调用静态方法alloc分配内存

暂时把ID当做是任何对象

调用一个动态方法init进行初始化

release内存释放

构造函数initWith

构造函数的声明-(id)initWithXXXXXXX(nsstring *)XXXXXX

编程使用驼峰命名法

 -(id)initWithPhoneName:(nsstring) vesion(double)phoneVesion两个变量的实现

self和super的具体区别;self调用子类,super调用父类

readwrite,readonly表示属性是可读写的,也就是可以使用getter和setter,而readonly只能使用getter

assign,retain,cop表示属性如何存储

nonatomic表示不用考虑线程安全问题

-对象方法 +类的方法拿类直接调用

instancetype返回值类型

Category语法:能把一个累的实现分为若干个不同文件中;每个Category市类的一部分;

//添加背景图片

-(void)addBackgroundImage

{

    UIImageView * bgImageView = [[UIImageView alloc]initWithFrame:CGRectMake(0,0,320,568)];

    //设置图片视图的图片

    bgImageView.image = [UIImage imageNamed:@"TuCao_h"];

    //把图片视图添加到父视图上

    [self.view addSubview:bgImageView];

}

UIImageView专门用来显示视图

CGrect结构体

BOOL判断正确还是错误

NSOrderedAscending比较大小升序

NSOrderedDescending比较大小降序

调用[[XXX new]xxxx]静态调用

动态调用 XX xx = [[ XX alloc]init];[xx 方法名];

self调用自己.m里的文件

-(void)subWithStr

{

    NSString * str8 = @"0123456789";

    NSString * str9 = [str8 substringToIndex:6];

    //从srt8中提取从头至第六个字符串(不包括第六个),生成的字符串。返回字符串地址,不会修改原字符串

    NSString * str10 = [str8 substringFromIndex:6];

    //从str8中提取第六个字符(包括第六个)到最后一个字符,生成新字符串,返回字符串地址

    NSString * str11 = [str8 substringWithRange:NSMakeRange(3, 4)];

    //从str8中提取从三个字符串(包括第三个)共四个字符,生成新的字符串,返回字符串地址

    NSLog(@"str9 is %@,str10 is %@,str11 is %@",str9,str10,str11);

}

字符串增加、删除

-(void)changeStr

{

    NSMutableString * m_str = [[NSMutableString alloc]init];

    [m_str setString:@"hello"];

    NSLog(@"m_str is %@",m_str);

    [m_str setString:@"word"];

    NSLog(@"m_str is %@",m_str);

    [m_str appendString:@"123"];//

    NSLog(@"m_str is %@",m_str);

    [m_str appendFormat:@"%c",'D'];

    NSLog(@"m_str is %@",m_str);

    [m_str insertString:@"XXXX" atIndex:4];NSLog(@"m_str is%@",m_str);//插入

    NSLog(@"m_str is %@",m_str);

    [m_str insertString:[NSString stringWithFormat:@"%d",-213] atIndex:7];

    NSLog(@"m_str is %@",m_str);

    [m_str deleteCharactersInRange:NSMakeRange(3, 5)];//删除

    NSLog(@"m_str is %@",m_str);

    [m_str replaceCharactersInRange:NSMakeRange(3, 4) withString:@"kkadfasdf"];//替换

    NSLog(@"m_str is %@",m_str);

}

枚举 typedef NS_ENUM(NSUInteger,ButtonTag)

{

  ButtonTagXxx = xxx;

  ButtonTagXxx = xxx;

}

NSArray * arr = @[@"One",@"Two",@"Three",@"Four",@"Five",@"Six"];

    for (int i = 0; i < arr.count; i++) {

        if (i%2 == 0) {

            NSLog(@"arr is %@",[arr objectAtIndex:i]);

        }

       NSLog(@"arr is%@",arr);

NSMutableArray可变数组

数组的增添删除和替换

   NSMutableArray * array = [[NSMutableArray alloc]init];

    //增加数组

    [array addObject:@"One"];

    [array addObject:@"Two"];

    [array addObject:@"Three"];

    NSLog(@"增加元素 %@",array);

    //删除数组

    [array removeObject:@"One"];

    [array removeObjectAtIndex:1];

    NSLog(@"删除元素 %@",array);

    //改变数组

    [array addObject:@"One"];

    [array addObject:@"Three"];

    NSLog(@"现在的元素 %@",array);

    [array exchangeObjectAtIndex:0 withObjectAtIndex:1];

NSLog(@"交换后的元素 %@",array);

//字符串与数组的转换

-(void)stringTransArray

{

    NSString * str = @"ios is so easy,mum will not worry my study,expect...";

    //获得一个正序的数组

    NSArray * array = [str componentsSeparatedByString:@" "];

    NSLog(@"使用compoentsSepartedBuString方法获得的数组是正序的,%@",array);

    //如何把正序变成反序

    NSMutableArray * mutableArray = [[NSMutableArray alloc]init];

    NSEnumerator * enumerator =[array reverseObjectEnumerator];

    id obj;

    while (obj = [enumerator nextObject]) {

       [mutableArray addObject:obj];

    }

    NSLog(@"可变数组%@",mutableArray);

    NSString * newStr =[mutableArray componentsJoinedByString:@""];

    NSLog(@"新的字符串 %@",newStr);

}

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值