|
0
|
| java.is.for.desktop · 技术社区 · 16 年前 |
|
|
1
5
所以在我看来,这不是什么性能问题,是的,您可以扩展输入/输出流并基于字节数组。 |
|
2
3
单字节读取几乎总是一个巨大的性能问题。但是如果你读了InputStream的API文档,你会发现你必须重写read(),但是也应该重写read(byte[],int,int)。大多数使用任何类型InputStream的代码都会调用数组样式的方法,但是该函数的默认实现只是通过为每个字节调用read()来实现的,因此会对性能产生负面影响。 对于OutputStream,同样的情况也适用。 |
|
|
3
1
正如丹尼尔所说,你必须超越
但是,我怀疑您是否应该关心性能,因为jvm可以并且将为您内联该方法。最重要的是,我觉得这不是个问题。
而且,大多数读者在场景后面使用一些底层输入流,因此在任何情况下,这些基于char数组的方法最终都会调用
|
|
|
4
1
请注意
除此之外,
|
|
|
5
0
就性能而言,如果用BufferedInputStream包装它,JVM应该能够优化单字节读取方法调用的开销,即,它的速度与您自己进行缓冲一样快。 |
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |