全国统一服务热线

400-6263721

  • 武汉达内java培训机构

java编程性能优化办法

  性能优化是大多数java编程开发程序员都在关注的一个问题,下面我们就通过案例分析来了解一下,java编程性能优化都有哪些方法。

  一、java中正则表达式相关优化

  使用Matcher和Pattern进行预编译,替换String.matches,split,replaceAll,replaceFirst等方法,避免不必要的pattern编译。

  二、java.util.LinkedList性能

  考虑使用ArrayDeque用于基于队列的算法替换LinkedList,性能优于LinkedList;

  使用ListIterator(forEach)遍历LinkedList【链表特性】;

  避免任何接受或返回列表中元素索引的LinkedList方法【类似获取index的操作】,性能很差,遍历列表实现;

  三、java.util.Date,java.util.Calendarandjava.text.SimpleDateFormatperformance日期的存储,解析和转换

  除非您必须使用java.util.Date,否则不要使用它。改用普通的long。

  java.util.Calendar可用于各种日期计算,但要避免存储大量此类对象或广泛创建它们——它们消耗了大量内存,创建成本高昂。

  java.text.SimpleDateFormat适用于一般案例日期时间解析,但如果您必须以相同的格式解析大量日期(特别是没有时间的日期),好避免它。改为手动实现解析器。

  四、使用JodaTime类库进行时间处理,在某些方面性能更好

  五、java.io.ByteArrayOutputStream,不应该在性能关键代码中使用ByteArrayOutputStream

  对于性能关键型代码,请尝试使用ByteBuffer而不是ByteArrayOutputStream。如果您仍然想使用ByteArrayOutputStream-请取消其同步。

  在大多数情况下,避免使用ByteArrayOutputStream.toByteArray方法——它创建一个内部字节数组的副本。如果您的应用程序使用几千兆字节内存,收集这些副本的垃圾可能需要相当长的时间。

  六、java.io.BufferedInputStream,java.util.zip.GZIPInputStream,java.nio.channels.FileChannel:这两个流中的一些小性能陷阱

  BufferedInputStream和GZIPInputStream都有内部缓冲区。前者的默认大小为8192字节,后者的默认大小为512字节。一般来说,值得将任何尺寸增加到至少65536。

  七、各种通用压缩算法的性能——其中一些速度惊人(LZ4)

  如果您认为数据压缩速度非常缓慢,请检查LZ4()实现,该实现能够以约320Mb/秒的速度压缩文本文件——对于大多数应用程序来说,这种速度的压缩不应该很明显。如果可能,将LZ4压缩缓冲区大小增加到32M限制是有意义的(请记住,您需要一个类似大小的缓冲区进行解压缩)。您还可以尝试将2个具有32M缓冲区大小的LZ4BlockOutputStream-s链起来,以充分利用LZ4。

尊重原创文章,转载请注明出处与链接:http://www.mxiao.cn/1942/new/238714/违者必究! 以上就是武汉达内it培训机构 小编为您整理java编程性能优化办法的全部内容。

推荐课程 / RECOMMENDED COURSE

  • 武汉大数据培训

  • 武汉UI设计课

  • 武汉python人工智能培训

  • 武汉web前端培训课

  • 查看更多>>

课程分类 / COURSE CATEGORY

定制专属于你的课程

10秒登记,定制专属于你的课程方案

填写下表,让专业老师根据你的性格爱好选择最适合你的。

版权所有:武汉达内it培训机构

温馨提示:提交留言后老师会第一时间与您联系!热线电话:400-6263721