当前位置: 首页 > news >正文

rust学习 字符串

fn main() { let mut s=String::new(); s.push('a'); //添加一个字符 s.push_str("hello"); s.push_str(" world"); println!("{}",s); let s1=String::from("hi"); let s2=&s1; println!("{}",s1); let s3 = "hello every".to_string(); println!("{}",s3); println!("{}",s3);//宏不影响 let s4=format!("{}{}{}","a","b","c"); println!("{}",s4); println!("{}",s4); let s51=String::from("b"); let s52=String::from("c"); let s5=format!("{}{}{}","a",s51,s52); println!("{}",s5); println!("{}",s5); // let s6="a"+"b";//错误 `+` cannot be used to concatenate two `&str` strings // let s7="a"+s51; //错误 let s7=s51+"a";//String必须在前面 //s1[0];//`std::string::String` cannot be indexed by `{integer} let s8="hello"; // let s9=s8[0];//required because of the requirements on the impl of `std::ops::Index<{integer}>` for `str' //String 和 &str 都不能索引,处理字符请使用 .chars() 迭代器。 let s = String::from("hello"); // 正确方式1:chars() for c in s.chars() { println!("{}", c); } let first_char = s.chars().next(); // Option<char> println!("{:?}", first_char); // Some('h') // 正确方式2:收集为Vec let chars: Vec<char> = s.chars().collect(); println!("第一个字符: {}", chars[0]); // 正确方式3:字节索引(仅ASCII) let bytes = s.as_bytes(); println!("第一个字节: {}", bytes[0] as char); // 处理中文 let chinese = String::from("你好"); let first = chinese.chars().next().unwrap(); println!("第一个中文字符: {}", first); // '你' } }


http://www.jsqmd.com/news/927375/

相关文章:

  • RV1126边缘计算盒子在智慧零售的落地:2T算力如何同时处理6路摄像头,实现客流分析与货架监控
  • NExT-GPT:实现任意模态转换的多模态大语言模型架构与实战
  • 构建统一API网关:从适配器模式到编排协同的架构实践
  • 别再死记硬背SQL JOIN了!用这个电商订单查询案例,5分钟搞懂INNER JOIN怎么用
  • Unity游戏对话系统进阶:用TextMeshPro实现带渐变淡入的打字机效果(附完整C#源码)
  • Inflection AI崛起之路:从隐秘项目到40亿美元AI独角兽的深度解析
  • 通过提交 PR 完成一次 openEuler 社区贡献
  • 深入TongLINKQ架构:从一条消息的旅程理解其核心进程与队列模型
  • 环境智能:从产品到生态,商业逻辑的重构与落地挑战
  • AI智能体工程化管理:Define-Deliver-Drive框架实战指南
  • 【元器件专题】MOS管开通过程波形分析
  • 如何将平板电脑变成Linux副屏:VirtScreen完整使用指南
  • Raven框架:基于视频分析的Scratch编程自动化评估方案
  • 智能手机AR环境融合技术:Chameleon系统解析与应用
  • 2026年电话外呼机器人老牌企业亲测效果排行榜
  • 2026年PC板温室大棚厂家排行,亲测效果分享
  • LOIC终极指南:如何安全使用开源网络压力测试工具
  • 新型智慧园区规划设计方案(39页)!
  • 仅用文本实现视频目标分割:WSRVOS框架原理与实战解析
  • Google Docs AI文档摘要功能深度解析:从原理到实战应用
  • 告别Eureka和Zookeeper:SpringBoot项目用Consul做服务注册与发现,到底香不香?
  • 华大HC32L136 SPI DMA发送避坑实录:从‘软件触发’失效到硬件Bug的完整解决
  • 星穹铁道自动化终极指南:如何用AutoStarRail实现一键清理体力与智能锄大地
  • Ubuntu虚拟机开机卡在systemd服务?别慌,这可能是你的磁盘空间在求救
  • ESP32嵌入式显示实战:3大硬件驱动方案与性能优化指南
  • AI驱动的行为认证:从密码到行为指纹的安全演进
  • 硬件实践3--超低功耗485网关(TODO)
  • STM32 FOC实战:手把手教你配置ADC采样点,避开PWM死区与振铃的坑
  • 性能调优视角:如何通过修改Tomasulo模拟器参数(如加减乘除延迟)来观察CPU流水线变化
  • hyper 2025 用户调查结果出炉,有哪些看点?