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

做机械方面外贸最大的网站最快的新闻发布平台

做机械方面外贸最大的网站,最快的新闻发布平台,上海最大的网站建设,node.js做网站开发什么是String Rust的核心语言中只有一个String类型,那就是String slice,str通常被当作是&str的借用。String类型是通过标准库提供的,而不是直接编码到核心语言中,它是一个可增长的、可变的、utf-8编码的类型。str和String都是utf-8编码的…

什么是String

  • Rust的核心语言中只有一个String类型,那就是String slice,str通常被当作是&str的借用。
  • String类型是通过标准库提供的,而不是直接编码到核心语言中,它是一个可增长的、可变的、utf-8编码的类型。
  • strString都是utf-8编码的。如果你想使用一个非utf-8编码的String,可以使用OsString

创建新的String

  • String实际上是通过包装bytes类型的vector实现的。
  • 使用new方法创建String:let mut s = String::new()
  • 使用to_string方法创建String:
    let data = "initial contents";
    let s = data.to_string();
    let s = "initial contents".to_string();
    
  • 使用String::from方法创建字符串,let s = String::from("initial contents").
  • 根据指定的容量,创建一个空字符串let mut s = String::with_capacity(10);。当字符串长度小于10的时候,不会触发内存重分配。
  • 可以通过len方法查看字符串长度,通过capacity方法查看字符串容量。
  • 通过utf-8类型的vector创建字符串let s_from_vec = String::from_utf8(vec![0xe4, 0xbd, 0xa0, 0xe5, 0xa5, 0xbd]);
  • 如果vector可能包含不合法的utf-8编码则可以用from_utf8_lossy,这将使用占位符替换不合法的utf8字符:
        let invalid_utf8 = vec![0xff, 0xff, 0xff];let s_from_invalid_utf8 = String::from_utf8_lossy(&invalid_utf8);
    

更新String

Rust不允许使用下标访问字符串里面的单个字符

使用push_str和push追加字符串

let mut s = String::from("foo");
s.push_str("bar");
// s is foobar

push_str方法不会改变字符串的所有权

let mut s = String::from("lo");
s.push('l');
// s is lol

使用+操作符或者 format!宏连接字符串

let s1 = String::from("Hello, ");
let s2 = String::from("world!");
let s3 = s1 + &s2; // note s1 has been moved here and can no longer be used
let s1 = String::from("tic");
let s2 = String::from("tac");
let s3 = String::from("toe");let s = format!("{s1}-{s2}-{s3}");

扩大字符串容量

let mut s_origin = String::with_capacity(10);
s_origin.push('1');
s_origin.reserve(10);
println!("{}", s_origin.capacity()); \\ 容量至少是10+1,一般会多分配一些

迭代字符串的方法

  • 可以使用chars方法访问独立的UniCode字符。使用bytes方法访问每一个字节。
for c in "Зд".chars() {println!("{c}");
}

将String类型转为其他类型

  • 转为bytes数组
let s = String::from("hello");
let bytes = s.into_bytes();
  • 转为字符串切片&str
let tmp_s = String::from("hello");
let s_str = tmp_s.as_str();
http://www.15wanjia.com/news/44169.html

相关文章:

  • 优质做网站哪家好宁波优化推广选哪家
  • 网站建设都是模板天津seo优化排名
  • 兰州企业做网站官网关键词优化价格
  • 3合1网站建设哪家好网店营销推广
  • 做相册网站推荐seo是怎么优化的
  • 昆明网签备案查询系统seo关键词首页排名
  • 如何和其他网站做友情链接sem是什么岗位
  • google香港网站建设淘宝关键词
  • wordpress企业门户网站域名交易域名出售
  • 网站建设维护保密协议书设计网站排名
  • 网站制作基础教程优秀软文范例100字
  • ps做网站页面设置为多大网络推广优化方案
  • 用dw做网站的基本步骤域名服务器ip地址查询
  • 两学一做网站条幅免费网站申请注册
  • 网站制作企业上海互联网公司排名
  • 专门做中式服装平台的网站大连网站优化
  • 利用百度图片做网站外链百度识图搜索
  • 南京便宜网站建设网络公司是做什么的
  • 网站开发公司面试题专业seo培训
  • 备案的博客网站可以做别的吗网站子域名查询
  • 二级域名怎么做网站备案网络推广运营推广
  • 推广网站注册赚佣金镇江百度seo
  • 微擎微网站开发贵阳网站建设推广
  • 厦门网站建设 php深圳营销推广公司
  • 做列表的网站做网站用什么软件好
  • 如何自己做网站知识百度搜索引擎优化的方法
  • 用java软件做网站举出最新的网络营销的案例
  • 沈阳网站制作公司南宁seo优化
  • 内贸在什么网站做怎么推广引流客户
  • 江西省上饶市建设局网站成都seo优化推广