据说rust早期版本中,String::from()、into()、to_string(),推荐前两种算法,后面一种说开销大,效率低。因此想测试一下:

一、代码

use std::thread;
use std::time::{Duration, SystemTime};
fn main() {println!("下面开始比较三种方法:");let sy_time0 = SystemTime::now();let n = 100000000; //1个亿次数for _ in 0..n {let _x: String = "hello".to_string();}println!("to_string:() => time :{} seconds",SystemTime::now().duration_since(sy_time0).unwrap().as_secs());let sy_time1 = SystemTime::now();for _ in 0..n {let _x: String = String::from("hello");}println!("string::from() => time :{} seconds",SystemTime::now().duration_since(sy_time1).unwrap().as_secs());let sy_time2 = SystemTime::now();for _ in 0..n {let _x: String = "hello".into();}println!("into() => time :{} seconds",SystemTime::now().duration_since(sy_time2).unwrap().as_secs());thread::sleep_ms(500000);
}

二、测试结果

1亿次的测试结果如下:

也就是说,这三种方法相差无几。

to_string()方法已经经过优化了。

Rust:String::from()、 into()、to_string()哪个效率高?相关推荐

  1. NIO 拷贝文件真的比 IO 效率高 ?

    本文是基于单线程的NIO和IO拷贝文件比较, 并未对并发做测试, 请勿过度纠结场景! 今天发现项目中有个FileUtils.copy的工具方法, 打开后发现是基于io的, 我给改成了基于NIO的, 突 ...

  2. linux 文件拷贝io,NIO拷贝文件真的比IO拷贝文件效率高?

    今天发现项目中有个FileUtils.copy的工具方法, 打开后发现是基于io的, 我给改成了基于NIO的, 突然疑虑NIO拷贝文件真的如其他人说的那样比IO效率高很多么? 以下是我的工具方法: / ...

  3. 灵魂拷问:用移位来代替除法运算真的效率高吗?Java 编译器到底有没有做除法优化?

    目录 引入 C++ 编译器对除法的优化 Java 编译器对除法的优化 移位运算对应的字节码 除法操作对应的字节码 查看及分析 JIT 即时编译结果 1.手动编译 OpenJDK 2.编译 hsdis- ...

  4. C# 多线程 Parallel.For 和 For 谁的效率高?那么 Parallel.ForEach 和 ForEach 呢?

    还是那句话:十年河东,十年河西,莫欺少年穷. 今天和大家探讨一个问题:Parallel.For 和 For 谁的效率高呢? 从CPU使用方面而言,Parallel.For 属于多线程范畴,可以开辟多个 ...

  5. 移除集合效率高还是add高_HashMap存取效率高原因、ArrayList和LinkedList区别、JAVA实现链表的基本功能...

    一.HashMap存取效率高原因 1.Hash 也叫散列.哈希. 主要用于信息安全领域中的算法,把长度不同的信息转化为杂乱的128位的编码,找到一种数据内容与地址之间的映射关系. 注意:不同的输入可能 ...

  6. 为什么 2 * (i * i) 比 2 * i * i 效率高?

    问题 为什么 2 * (i * i) 比 2 * i * i 效率高? 执行如下代码时,平均完成时间在 0.50s 到 0.55s 之间: ublic static void main(String[ ...

  7. case when 效率高不高_南京薄蜂窝纸板效率高

    目前国产的瓦楞纸板都不同程度地存在起泡现象,它在很大程度上影响了瓦楞纸板的质量,若每平方米脱胶部分面积之和大于500px~2,则纸板为不合格产品,因此,有效地控制和脱胶和起泡缺陷,对生产企业提高产品质 ...

  8. jvm 堆外内存_NIO效率高的原理之零拷贝与直接内存映射

    更多内容,欢迎关注微信公众号:全菜工程师小辉~ 前言 在笔者上一篇博客,详解了NIO,并总结NIO相比BIO的效率要高的三个原因,彻底搞懂NIO效率高的原理. 这篇博客将针对第三个原因,进行更详细的讲 ...

  9. php 开发 比 java 快_PHP 比 Java 的开发效率高在哪?

    做了几年PHP,最近在转Java,已经用Java做了半个互联网项目的人强答一下. 个人认为,PHP开发效率高主要是因为弱类型特性和自带强力函数库的原因. Java有太多的条条框框,对于我这种刚学的人来 ...

  10. php遍历数组哪个效率高,PHP遍历数组的三种方法及效率对比分析

    PHP遍历数组的三种方法及效率对比分析 发布于 2015-03-04 21:55:27 | 129 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext ...

最新文章

  1. git常用命令之stash
  2. Servlet的体系结构 || Servlet相关配置
  3. pycharm如何标记代码?创建代码标签?创建数字标签?收藏代码标签
  4. cc压力测试_斯坦福大学鲍哲南院士AFM综述:教你如何设计压力传感器的微结构...
  5. springboot mybatis ehcache_SpringBoot入门建站全系列(十四)集成Redis缓存
  6. Ubuntu 安装 samba 实现文件共享和source insight 阅读uboot
  7. 从2-3-4树谈到Red-Black Tree(红黑树)
  8. ArchLinux简明安装教程
  9. 33.4. Gearman
  10. mysql中set names_深入理解mysql SET NAMES和mysql(i)_set_charset的区别
  11. linux vnc开启防火墙,[转载]CentOS 6.0 下 VNC 配置方法(带防火墙配置)
  12. 利润表模板excel_Excel教程:作为财务,这些excel技巧你还不会吗?
  13. js实现word生成书签_javascript下用ActiveXObject控件替换word书签,将内容导出到word后打印...
  14. Flink StreamingFileSink 文件到hdfs 文件一直处于inprogress状态无法生成正式文件
  15. 金域医学与华为云联合,AI辅助宫颈癌筛查方案获得阶段性突破
  16. 黎曼猜想--论文笔记《On the Number of Primes Less Than a Given Magnitude》
  17. Wireshark基础知识(一)
  18. Win11怎么添加日语输入法
  19. Centos删除乱码文件或文件夹
  20. HTML5七夕情人节表白网页❤ 浪漫的樱花雨3D相册 ❤ HTML+CSS+JavaScript

热门文章

  1. LSI阵列卡在线扩容
  2. 身在旋涡中的百度外卖,还能否找到接盘者?
  3. cisco路由器配置DHCP实例
  4. 很有用的SQLServer全局变量
  5. Mybatis-学习笔记(8)常用的注解
  6. Vulnerability Scanning Tools
  7. Python django 安装 mysqlclient 失败
  8. vue 实现 tomato timer(蕃茄钟)
  9. java常见类型的转化以及风险
  10. Oracle禁止connect / as sysdba方式登录