Objective-C----NSString 、 NSMutableString

来源:互联网 发布:mysql教程合集 编辑:程序博客网 时间:2024/04/29 17:07

直接上代码:

////  main.m////  Created by  on 15/4/2.//  Copyright (c) 2015年 . All rights reserved.//#import <Foundation/Foundation.h>#import "Tire.h"int main(int argc, const char * argv[]) {    //NSString 类    /*     *  学习系统类需要把握一下几点:     *  1、根据给定的初始化方法和便利构造器方法创建对象;     *  2、根据需求使用实例方法完成对应的操作;     *  3、学会看系统类的头文件;     *  4、学会通过帮助文档来学习对应的方法。     */    //使用初始化方法创建//    NSString *str1 = [[NSString alloc] initWithString:@"name"] ;    NSString *str1 = @"name" ;    NSLog( @"%@", str1 ) ;//    NSString *str2 = [NSString stringWithString:@"name"] ;    NSString *str2 = @"name" ;    NSLog( @"%@", str2 ) ;    char *cStr = "haha" ;    //将C语言字符串转成OC的对象    NSString *str3 = [[NSString alloc] initWithCString:cStr encoding:NSUTF8StringEncoding] ;    NSLog( @"%@", str3 ) ;    NSString *str4 = [NSString stringWithCString:cStr encoding:NSUTF8StringEncoding] ;    NSLog( @"%@", str4 ) ;    //根据指定格式创建字符串    NSString *str5 = [[NSString alloc] initWithFormat:@"%@+%d", @"en", 1001] ;    NSLog( @"%@", str5 ) ;    NSString *str6 = [NSString stringWithFormat:@"%@+%d", @"ne", 10014] ;    NSLog( @"%@", str6 ) ;    //根据指定路径的文件内容创建字符串对象    NSString *str7 = [[NSString alloc] initWithContentsOfFile:@"/Users/lanouhn/Desktop/test.txt" encoding:NSUTF8StringEncoding error:nil] ;    NSLog( @"%@", str7 ) ;//    NSError *err = [NSError init] ;    NSString *str8 = [NSString stringWithContentsOfFile:@"/Users/lanouhn/Desktop/words.txt" encoding:NSUTF8StringEncoding error:nil] ;    NSLog( @"%@", str8 ) ;    //求字符串对象的长度    NSInteger length = [str8 length] ;    NSLog( @"%ld", length ) ;    //判断一个字符串对象是否拥有前缀字符串    BOOL result1 = [str8 hasPrefix:@"If"] ;    NSLog( @"%@", result1 ? @"YES" : @"NO" ) ;    //判断一个字符串对象是否拥有后缀    BOOL result2 = [str8 hasSuffix:@"en"] ;    NSLog( @"%@", result2 ? @"YES" : @"NO" ) ;    //判断一个字符串对象是否和另一个字符串对象相同    BOOL result3 = [str8 isEqualToString:str7] ;    NSLog( @"%@", result3 ? @"YES" : @"NO" ) ;    NSLog( @"%d", result3 ) ;    //字符串比较排序结果    NSComparisonResult result4 = [str8 compare:str7] ;    NSLog( @"%ld", result4 ) ;    //获取子字符串    //从指定下标的字符开始(包含改字符)到字符串结束的子字符串,下标从 0 开始。    NSString *subStr1 = [str8 substringFromIndex:1] ;    NSLog( @"%@", subStr1 ) ;    //从下标为0的字符开始到指定的下标结束 ,此范围内的字符串    NSString *subStr2 = [str8 substringToIndex:2] ;    NSLog( @"%@", subStr2 ) ;    //NSRange 为结构体类型, 成员location描述下标位置,成员length描述需要截取的字符串长度    NSRange rang = NSMakeRange(1, 3) ;//    rang.length = 4 ;//    rang.location = 2 ;    NSString *subStr3 = [str8 substringWithRange:rang] ;    NSLog( @"%@", subStr3 ) ;    //字符串拼接    //根据给定的参数字符串拼接并产生新的字符串,不改变原有的字符串。(不可变字符串)    NSString *newString1 = [str8 stringByAppendingString:@"+100"] ;    NSLog( @"%@", newString1 ) ;    //根据给定的格式串以及参数拼接产生新的字符串    NSString *newString2 = [str8 stringByAppendingFormat:@"%d", 1001] ;    NSLog( @"%@", newString2 ) ;    //路径拼接    NSString *newString3 = [str8 stringByAppendingPathComponent:@"xx.avi"] ;    NSLog( @"%@", newString3 ) ;    //字符串替换    //通过给定的第二字符串替换str8中存在的字符串,所有的都替换    NSString *newString4 = [str8 stringByReplacingOccurrencesOfString:@"e" withString:@"呵呵"] ;    NSLog( @"%@", newString4 ) ;    //字符串与数值类型数据的转换    NSString *numString1 = @"1" ;    NSInteger integerValue = [numString1 integerValue] ;    NSLog( @"%ld", integerValue ) ;    float integerValue1 = [numString1 floatValue] ;    NSLog( @"%f", integerValue1 ) ;    //大小写转换    NSString *string = @" i love you" ;    //转成大写字符    NSString *upperCaseStr = [string uppercaseString] ;    NSLog( @"%@", upperCaseStr ) ;    //转成小写字符    NSString *lowercaseStr = [upperCaseStr lowercaseString] ;    NSLog( @"%@", lowercaseStr ) ;    //转成首字母大写字符串(每个字符串的首字母转成大写的)    NSString *capitalString = [string capitalizedString] ;    NSLog( @"%@", capitalString ) ;    /*     *  可变字符串     *     *  NSMutableString     *     */    NSMutableString *mutableStr1 = [[NSMutableString alloc] init] ;    NSLog( @"%@", mutableStr1 ) ;    NSMutableString *mutableStr2 = [NSMutableString string] ;    //可变字符串的拼接    [mutableStr1 appendString:@"abcdef"] ;    NSLog( @"%@", mutableStr1 ) ;    NSString *resultString = [mutableStr1 stringByAppendingString:@"xxxx"] ;    NSLog( @"%@", resultString ) ;    NSLog( @"%@", mutableStr1 ) ;    //另一个字符串拼接方法    //stringByAppendingFormat : appendFormat    [mutableStr2 appendFormat:@"wang+%d", 1001] ;    NSLog( @"%@", mutableStr2 ) ;    //删除字符串    [mutableStr2 deleteCharactersInRange:NSMakeRange(2, 4)] ;    NSLog( @"%@", mutableStr2 ) ;    //插入字符串    //在给定的下标之前插入指定的字符串(前插)    [mutableStr2 insertString:@"123" atIndex:2] ;    NSLog( @"%@", mutableStr2 ) ;    //替换字符串    //根据给定的字符串的替换指定范围的字符们    [mutableStr2 replaceCharactersInRange:NSMakeRange(0, 3) withString:@"xxx"] ;    NSLog( @"%@", mutableStr2 ) ;     /*     *  练习一:     *     *   给定一个图片文件名,判断字符串中是否以     *  “png”结尾,如果是就替换成“jpg”,如果 不是,就拼接”.jpg”。     */    //不可变 字符串    NSString *practiceStr = @"wang/zhen/gang/.png" ;    if ( [practiceStr hasSuffix:@"png"] ) {        NSLog( @"%@", [practiceStr stringByReplacingOccurrencesOfString:@"png" withString:@"jpg"] ) ;    }    else {        NSLog( @"%@", [practiceStr stringByAppendingString:@".jpg"] ) ;    }    //可变 字符串    NSMutableString *practiceMutableStr = [[NSMutableString alloc] initWithString:@"wang.png"] ;//    [practiceMutableStr appendString:@"wang.png"] ; // 注意 NSMutableSring 的初始化 不能用 语法糖    if ( [practiceMutableStr hasSuffix:@"png"] ) {//        NSLog( @"%@", [practiceMutableStr stringByReplacingOccurrencesOfString:@"png" withString:@"jpg"]) ;        [practiceMutableStr replaceCharactersInRange:[practiceMutableStr rangeOfString:@"png"] withString:@"jpg"] ;    }    else {        [practiceMutableStr appendString:@".jpg"] ;    }    NSLog( @"%@", practiceMutableStr ) ;    return 0;}
0 0
原创粉丝点击