没有合适的资源?快使用搜索试试~ 我知道了~
Java流和过滤器的性能.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 84 浏览量
2022-07-02
10:33:00
上传
评论
收藏 1.19MB PDF 举报
温馨提示
试读
2页
像这样的日志代码会更好: if (log.isLoggable(Level.FINE)) { log.log(Level.FINE, "I am here, and the value of X is {} and Y is {}", new Object[]{calcX(), calcY()}); } 应用的性能取决于它的代码如何编写。例如,如果程序循环遍历数组中的所有元素,JVM 就可以优化数组的边界检查,使循环更快,展开循环能提供额外的加速。但如果循环是为了找到特定元素,那目前还没有什么优化的办法,使得遍历数组和采用HashMap 的版本一样快。以数据库的性能为例,但运行环境的任何部分都可能会引起性能问题。 对于整体系统,采取结构化方法针对系统的所有方面分析性能。CPU 使用率、I/O 延迟、系统整体的吞吐量都必须测量和分析。只有到那时,我们才能判定到底是哪个组件导致了性能瓶颈。关于这个主题有大量优秀的资源,相关的方法和工具也不只针对Java。假定你已经完成了分析,并且判断出是运行环境中Java 组件的性能需要改善。
资源推荐
资源详情
资源评论
流和过滤器的性能
新的
Stream
Java 8
的特性,而与
Lambda
合使用。性
能面,要的特性,即以行化。行的
第
9
;本节和器的性能特性。
延迟遍历
(
Lazy Traversal
)
Stream
的第性能优实了的数据。子,
,想中第不字
A
的。实能的看上
面:
public String findSymbol(ArrayList<String> al) {
Optional<String> t = al.stream().
filter(symbol -> symbol.charAt(0) != 'A').
filter(symbol -> symbol.charAt(1) != 'A').
filter(symbol -> symbol.charAt(2) != 'A').
filter(symbol -> symbol.charAt(3) != 'A').
findFirst();
return t.get();
}
明,用器实,不。,对子中
的而言,实数据
filter()
新,
以实上
4
辑。
实了,
filter()
。作用,上调用
findfirst()
时,不执行任的数据,不数据字
A
作。
,
findfirst()
面的第
4
器的要元素。而
元素,调用第
3
器生成的,以。第
1
器
ArrayList
上讲,原的中第元素,的第字
不
A
。实不,成调,;,
数,的数。第
2
器行
——对第
1
器的调时,第字不
A
。实不
,成调,传;,调用第
1
器
。
调上,。的:
private <T> ArrayList<T> calcArray(ArrayLisr<T> src, Predicate<T> p) {
ArrayList<T> dst = new ArrayList<>();
for (T s : src) {
if (p.test(s))
dst.add(s);
}
return dst;
}
资源评论
小兔子平安
- 粉丝: 209
- 资源: 1940
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功