• 注意! System.currentTimeMillis()潜在的性能问题

    System.currentTimeMillis()是极其常用的基础Java API,广泛地用来获取时间戳或测量代码执行时长等,在我们的印象中应该快如闪电。但实际上在并发调用或者特别频繁调用它的情况下(比如一个业务繁忙的接口,或者吞吐量大的需要取得时间戳的流式程序),其性能表现会令人大跌眼镜。直接看...

    夜晚看文章的时候,见到了Java8的StringJoiner

    在阅读项目代码是,突然看到了StringJoiner这个类的使用,感觉很有意思,对实际开发中也有用,实际上是运用了StringBuilder的一个拼接字符串的封装处理。为什么会新增这样一个String辅助类?原有的StringBuilder太死板,不支持分割,如果想让最终的字符串以逗号隔开,需要这样...

    文件Upload及Download

    文件的上传和下载,是非常常见的功能。很多的系统中,或者软件中都经常使用文件的上传和下载。...

    String类真的不可变的吗?“当然只是建议不可变!”

    背景对于String类的不可变(内容,大小)有着好奇心,于是想探个究竟再将其记录。分析Java开发众所周知String是不可变的,但是究竟哪里不可变呢,是内容不可变还是大小不可变,又是怎么个变法,对此真的头大!因此我苦思不得其解,终于通过实操以及源码让我找到梗了!首先我看了String源码,Stri...