OC - NSString/NSMutablestring

本文详细介绍了Objective-C中NSString类的使用方法,包括初始化、格式化字符串、读取文件内容、字符串长度计算、前后缀判断、大小写转换等功能,并演示了如何进行字符串比较、截取及替换操作。
// 定义 不可变字符串 .
NSString *s1 = @"abc";
    // 初始化
NSString *s2 = [[NSString alloc]init];
便利构造器
NSString *s3 = [NSString string];
    // 以上两个初始化方法都不常用 .
   
    //格式化初始化字符串
NSString *s4 = [[NSString alloc]initWithFormat:@"abc"];
    NSLog(@"%@",s4);
    NSString *s5 = [NSString stringWithFormat:@"def"];
    NSLog(@"%@",s5);
    NSString *s6 = [NSString stringWithFormat:@"%d123",456];
    NSLog(@"%@",s6);
   
    //
通过文件路径获取文件里的内容 .
    NSString *s7 = [NSString stringWithContentsOfFile:@"/Users/lanou3g/Desktop/Xcode/OClesson - 4/OClesson - 4/123.txt" encoding:NSUTF8StringEncoding error:nil];
   
    NSLog(@"%@",s7);
   
    //
表示求 s6 字符串长度 .
    NSLog(@"%lu",[s6 length]);
   
    //
判断是否有前后缀
    NSString *s8 = @"abc123";
    BOOL b1 = [s8 hasPrefix:@"abc"];
    NSLog(@"%d",b1);
    BOOL b2 = [s8 hasSuffix:@"123"];
    NSLog(@"%d",b2);
   
    //大小写转换  
     注意!!!一定要有返回值接收!!!   
NSString *s9 = [s8 uppercaseString];
    NSLog(@"%@",s9);
    NSString *s10 =[s9 lowercaseString];
    NSLog(@"%@",s10);

    //将某个字符串里所有的单词都变成首字母大写;
     NSMutableString *d1 = [ NSMutableString stringWithFormat : @"i love you somuch." ];
   
NSLog ( @"%@" ,d1);
   
NSString *d2 = [d1 capitalizedString ];
    NSLog(@"%@",d
2);
    // 比较字符串
    NSComparisonResult r1 = [s8 compare:s9];
    NSLog(@"%ld",r1);
   
    //
比较字符串是否相等 , 也可以用第一个 .
    BOOL b3 = [s8 isEqualToString:s9];
    NSLog(@"%d",b3);
   
    //
选取某位字符 ,( 字符串计算从 0 位开始 )
    NSLog(@"%c",[s8 characterAtIndex:1]);
   
    //
从第 x 为开始截取字符串一直到最后 , 包括第 x .
    NSString *s11 = [s8 substringFromIndex:1];
    NSLog(@"%@",s11);
   
    //x位开始, 包括第 x ,以后的字符串全部截掉,只保留前x.
    NSString *s12 = [s8 substringToIndex:1];
    NSLog(@"%@",s12);
  
    //以字符串中的某个字符为界限,讲字符串分成两部分.
     NSMutableString *f1 = [ NSMutableString stringWithFormat : @"20|http://www.baidu.com" ];
   
NSArray *arr1 = [f1 componentsSeparatedByString : @"|" ];
    NSLog(@"%@",arr1);
    打印结果(必须用数组接收):
                    20,                         
                   "http://www.baidu.com"




    // x 位开始 , 截取长度为 y 的字符串 . 包括第 x .
    NSString *s13 = [s8 substringWithRange:NSMakeRange(1, 3)];
    NSLog(@"%@",s13);
   
    ////
    //
可变字符串 . 继承与 nsstring, 也就是说 nsstring 的所有方法 nsmutablestring 都可以使用 . 唯一的区别是可变字符串不建议用 nsstring 的最直接
    //
的方法赋初值 .
    NSMutableString *ms1 = [NSMutableString stringWithFormat:@"456"];
   
    //
设置或者修改值
    [ms1 setString:@"789xyz"];
    NSLog(@"%@",ms1);
   
    //
字符串拼接
    [ms1 appendString:@"123"];
    NSLog(@"%@",ms1);
    [ms1 appendFormat:@"123%d",12];
    NSLog(@"%@",ms1);
   
    //
在一个字符串中 , 截取其中某一段 , 替换为另一个字符串 .
    [ms1 replaceCharactersInRange:(NSMakeRange(3, 3)) withString:@"456"];
    NSLog(@"%@",ms1);
   
    //
在一个字符串中 , 截取其中某一段 , 将其删除 .
    [ms1 deleteCharactersInRange:(NSMakeRange(3, 3))];
    NSLog(@"%@",ms1);
   
    //在第x位上插入某个字符或字符串.
    [ms1 insertString:@"0" atIndex:3];
    NSLog(@"%@",ms1);
随着全民健身事业的深入推进与户外运动的快速普及,定向越野赛事举办频次持续提升,赛事规模与参与人数不断增长,参与者与组织者对赛事组织效率、服务质量及管理规范化的要求日益提高。然而,传统定向越野赛事管理仍依赖人工登记、线下核对、纸质记录等方式,普遍存在信息同步滞后、流程繁琐易错、数据统计低效、成绩核算耗时、资金与签到管理不规范等突出问题。例如,人工报名信息核对易出现遗漏与错误,现场签到排队拥堵影响参赛体验,成绩人工录入误差率高,赛事资金与物资管理缺乏透明化监管。这些问题不仅大幅增加赛事组织成本与人力消耗,还制约赛事运营效率与整体服务水平提升。在此背景下,构建一套数字化、一体化的定向越野赛事管理系统,成为赛事运营主体优化管理模式、提升服务质量的迫切需求。本研究旨在通过信息化技术重构赛事管理全流程,解决传统模式下的信息孤岛与操作低效问题,为定向越野赛事规范化、智能化管理提供可落地的解决方案。 本研究基于 Spring Boot 与 Vue 技术栈,采用前后端分离架构设计并实现了一套定向越野赛事管理系统。技术层面:后端依托 Spring Boot 框架搭建 RESTful API 服务,利用其自动配置与模块化特性简化开发流程,集成 MyBatis-Plus 优化数据持久化操作;前端采用 Vue.js 框架实现组件化开发,通过 Element UI 组件库构建交互友好的可视化界面,利用 Axios 实现前后端数据动态交互;数据库选用 MySQL 保障数据高效存储与事务一致性,同时采用手机号短信验证、JWT 令牌等机制强化系统安全性与用户权限管理。 本系统的实施为定向越野赛事运营与管理提供了显著的现实价值:其一,通过线上报名、信息筛选与自动化核对,大幅降低人工操作误差,提升赛事组织效率 30% 以上;其二,定位打卡签到与实时成绩同步功能,实现参赛流程无纸化、智能化,显著改善参赛者体验;其
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值