go-rust-string操作

在没有gc的语言里,c语言太老,在应用开发中工程化太弱。c++ c++11/c++14/c++17/c++20,不断地分裂下去,心智负担太重。要想找个生态环境好,没有gc的语言只有rust这个奇葩了。
rust的所有权是颗榴莲,喜欢的人觉得真香,不喜欢的人受不了。但本文不会,只会记录api的使用,哈哈。

int to string

  • go
s := strconv.Itoa(3)
s = fmt.Sprintf("%d", 3)
  • rust
let n = 3;
s = 3.to_string();

expandable buffer

  • go
buf := &bytes.Buffer{}
buf.WriteByte('b') //write a byte
buf.WriteString("string") // write a string
fmt.Printf("%s\n", buf.String())
  • rust
let mut buf = String::new();
buf.push('b');
buf.push_str("string");
println!("{}", buf);

Split string by blank

  • go
words := strings.Fields("       aa\tbb\ncc\vdd\fee")
fmt.Printf("%s\n", words)
  • rust
let words = "   aa\tbb\ncc dd ee".split_whitespace().collect::<Vec<&str>>();
println!("{:?}", words);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容