栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

将字符串输出到系统输出最快的方法是什么?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

将字符串输出到系统输出最快的方法是什么?

感谢您的建议。我创建了一个测试程序来比较它们:

import java.io.BufferedOutputStream;import java.io.BufferedWriter;import java.io.OutputStream;import java.io.OutputStreamWriter;import java.lang.StringBuilder;public class systemouttest {    public static void main(String[] args) throws Exception {        long starttime = System.currentTimeMillis();        for (int i = 0; i < 100000; i++) {System.out.println( i );        }        long printlntime = System.currentTimeMillis();        StringBuilder sb = new StringBuilder();        for (int i = 0; i < 100000; i++) { sb.append( i + "n" );        }        System.out.print(sb.toString());        long stringbuildertime = System.currentTimeMillis();        OutputStream out = new BufferedOutputStream ( System.out );        for (int i = 0; i < 100000; i++) { out.write((i + "n").getBytes());        }        out.flush();        long bufferedoutputtime = System.currentTimeMillis();        BufferedWriter log = new BufferedWriter(new OutputStreamWriter(System.out));        for (int i = 0; i < 100000; i++) { log.write(i + "n");        }        log.flush();        long bufferedwritertime = System.currentTimeMillis();        System.out.println( "System.out.println: " + (printlntime - starttime) );        System.out.println( "StringBuilder: " + (stringbuildertime - printlntime) );        System.out.println( "BufferedoutputStream: " + (bufferedoutputtime - stringbuildertime) );        System.out.println( "BufferedWriter: " + (bufferedwritertime - bufferedoutputtime) );    }}

结果:

Environment1
System.out.println:482
StringBuilder:210
BufferedoutputStream:86
BufferedWriter:202


Environment2
System.out.println:1763
StringBuilder:45
BufferedoutputStream:76
BufferedWriter:34

这些建议的表现均优于System.out.println。BufferedOutputStream似乎是最安全的选择,因为它在两种测试环境中均表现良好。BufferedWriter也许更快。

如果有人有任何想法,请发表进一步的建议。我敢肯定有人可以使它更快:)



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/463331.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号