NSString 常用方法学习

</pre><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><pre name="code" class="objc">//
//  NSStringStu.m
//  OC基础学习
//
//  Created by 麦子 on 15/3/10.
//  Copyright (c) 2015年 麦子. All rights reserved.
//

#import "NSStringStu.h"

@implementation NSStringStu


-(void) stuByNSString
{

    NSLog(@"再一次开始学习IOS,麦子,加油!");
    
    
    /***   创建一个常量字符串   **/
    NSString  *string1 = @"这是一个产量字符串";    // 常量区
    NSLog(@"string1->%@",string1);
                                                // 字符串的静态方法,都是已类名开始的。注意
    
    /****   创建一个空字符串  ***/
    NSString  *string2 = [[NSString alloc] init];
    NSString  *string3 = [NSString string];
    
    NSLog(@"string2->%@",string2);
    NSLog(@"string3->%@",string3);
    
    /****   快速创建一个字符串     */    // 这些都是常量区的
    NSString *string4 = [[NSString alloc] initWithString:@"abc"];
    NSLog(@"string4-%@",string4);
    
    NSString *string5 = [NSString stringWithString:@"abc"];    // 这个方法和 前面直接定义差不多,都放在常量区,而且工具提醒用这个方法多此一举。
    NSLog(@"string5-%@",string5);

    /****  创建一个格式化字符串*/        // 这些都是创建在堆区的
    NSString *string6 = [[NSString alloc] initWithFormat: @"整数%d",10];
    NSString *string7 = [NSString stringWithFormat:@"浮点型%.3f",10.56]; // 预留几位小数
    NSLog(@"string6-%@----string7-%@",string6,string7);
    
    
    /**判断字符串的字符串的内容相等*/
    if ([string4 isEqualToString:string5]) {
        NSLog(@"字符串内容相同");
    }else{
        NSLog(@"字符串内容不相同");
    }
    
    
    /**判断对象是否相等*/
    if (string4 == string5) {  // 在这里 string4 和 string5都是在常量区的,所以指针都是指向同一个地址。 如果是堆区的就是不同的对象了。
        NSLog(@"同一个对象");
    }else{
        NSLog(@"不同的对象");
    }
    
    if (string6 == string7) { // 在堆区中,还是会指向同一个地址。 相同的这种形式创建的对象,还是true
        NSLog(@"同一个对象");
    }else{
        NSLog(@"不同对象");
    }
    
    /***比较字符串的大小*/
      NSString  *string9 = [[NSString alloc] initWithFormat:@"z"];
      NSString  *string10 = [NSString stringWithFormat:@"abcdrg"];
   
      NSComparisonResult result = [string9 caseInsensitiveCompare:string10];
    
      NSLog(@"result--->%ld",result);
    if (1 == result) {
        NSLog(@"z 大于 a");
    }else{
        
    }
    
    
    /***求字符串的长度*/
    NSLog(@"string9 长度%ld",[string10 length]);
    
    
    /***字符串大小写的转换*/
    NSString  *string12 = @"hello world";
    NSLog(@"全部大写 %@",[string12 uppercaseString]);
    NSLog(@"全部小写 %@",[string12 lowercaseString]);
    NSLog(@"第一个字母大写%@",[string12 capitalizedString]);
    
    
    /****数据类型转换*/
    NSString  *string13 = @"-11.1";            // 换成 @“AAA” 不会抱错,只是都是 0   0。
    NSLog(@"float %.3f",[string13 floatValue]);
    NSLog(@"boolea %d",[string13 boolValue]);
    
    /*****字符串转数组**/
    NSString  *string14 = @"123#456#789";
    NSArray *array = [string14 componentsSeparatedByString:@"#"];
    NSLog(@"array : %@",array);
    for (NSString *object in array) {
        NSLog(@"---%@",object);
    }
    
    /**字符串的截取*/   // 都是重新返回一个新的字符串
    NSString *string15 = @"abcdefgh";
    NSString *subString1 = [string15 substringToIndex:2];
    NSString *subString2 = [string15 substringFromIndex:2];
    NSLog(@"-->%@---%@",subString1,subString2);
    
    NSRange range;
    range.location = 2;
    range.length = [string15 length] - 4;
    
    NSString *subString3 = [string15 substringWithRange:range];
    NSLog(@"---%@",subString3);
    
    /***字符串的拼接*/
    NSString *string16 = @"maizi";
    NSString *string17 = @"ios";
    NSString *appString1 = [NSString stringWithFormat:@"%@%@",string16,string17];
    NSLog(@"appString1---%@",appString1);
    
    NSString *appString2 = [string16 stringByAppendingString:string17]; // 这个更类似java方法
    NSLog(@"appString2---%@",appString2);
    
    NSString *appString3 = [string16 stringByAppendingFormat:@"%@",string17];
    NSLog(@"appString3--%@",appString3);
    
    /**字符串查询*/
    NSString  *link = @"_t_ok";
    NSRange rangelink = [link rangeOfString:@"ok"];
    
    NSLog(@"%ld",rangelink.location);
    
    if (rangelink.location != NSNotFound) {
        NSLog(@"这个字符存在");
    }
    
    
    /***可变字符串,NSString的子类**/
    NSMutableString  *nsmutableStr = [NSMutableString stringWithFormat:@"aqiu_"];
    [nsmutableStr insertString:@"ios" atIndex:5];
    NSLog(@"%@",nsmutableStr);
    
    [nsmutableStr replaceCharactersInRange:NSMakeRange(0,3) withString:@"maizi"];
    
    NSLog(@"%@",nsmutableStr);
    
    [nsmutableStr deleteCharactersInRange:NSMakeRange(0,3)];
    NSLog(@"%@",nsmutableStr);
    
    
    
    
    
}

@end



运行结果如下:

2015-04-01 23:40:16.428 OC基础学习[1525:70163]再一次开始学习IOS,麦子,加油!

2015-04-01 23:40:16.429 OC基础学习[1525:70163] string1->这是一个产量字符串

2015-04-01 23:40:16.430 OC基础学习[1525:70163] string2->

2015-04-01 23:40:16.430 OC基础学习[1525:70163] string3->

2015-04-01 23:40:16.430 OC基础学习[1525:70163] string4-abc

2015-04-01 23:40:16.430 OC基础学习[1525:70163] string5-abc

2015-04-01 23:40:16.430 OC基础学习[1525:70163] string6-整数10----string7-浮点型10.560

2015-04-01 23:40:16.430 OC基础学习[1525:70163]字符串内容相同

2015-04-01 23:40:16.430 OC基础学习[1525:70163]同一个对象

2015-04-01 23:40:16.431 OC基础学习[1525:70163]不同对象

2015-04-01 23:40:16.431 OC基础学习[1525:70163] result--->1

2015-04-01 23:40:16.431 OC基础学习[1525:70163] z大于 a

2015-04-01 23:40:16.431 OC基础学习[1525:70163] string9长度6

2015-04-01 23:40:16.431 OC基础学习[1525:70163]全部大写 HELLO WORLD

2015-04-01 23:40:16.431 OC基础学习[1525:70163]全部小写 hello world

2015-04-01 23:40:16.431 OC基础学习[1525:70163]第一个字母大写Hello World

2015-04-01 23:40:16.432 OC基础学习[1525:70163] float -11.100

2015-04-01 23:40:16.446 OC基础学习[1525:70163] boolea 1

2015-04-01 23:40:16.446 OC基础学习[1525:70163] array : (

    123,

    456,

    789

)

2015-04-01 23:40:16.446 OC基础学习[1525:70163] ---123

2015-04-01 23:40:16.446 OC基础学习[1525:70163] ---456

2015-04-01 23:40:16.447 OC基础学习[1525:70163] ---789

2015-04-01 23:40:16.447 OC基础学习[1525:70163] -->ab---cdefgh

2015-04-01 23:40:16.447 OC基础学习[1525:70163] ---cdef

2015-04-01 23:40:16.447 OC基础学习[1525:70163] appString1---maiziios

2015-04-01 23:40:16.447 OC基础学习[1525:70163] appString2---maiziios

2015-04-01 23:40:16.447 OC基础学习[1525:70163] appString3--maiziios

2015-04-01 23:40:16.448 OC基础学习[1525:70163] 3

2015-04-01 23:40:16.448 OC基础学习[1525:70163]这个字符存在

2015-04-01 23:40:16.448 OC基础学习[1525:70163] aqiu_ios

2015-04-01 23:40:16.448 OC基础学习[1525:70163] maiziu_ios

2015-04-01 23:40:16.448 OC基础学习[1525:70163] ziu_ios

Program ended with exit code: 0





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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值