那个太多了。我简单介绍五款非常不错的代码编辑器(文本编辑器),分别是vscode、sublimetext、sourceinsight、atom和notepad。感兴趣的朋友可以试试:
vs代码
这是一款免费、开源、跨平台的代码编辑器,由微软自主设计开发。在业内很受欢迎。智能补全、代码高亮、语法提示、git等常用功能。和这个软件很兼容。况且插件扩展丰富,生态环境好。它可以轻松编辑c、java、python等几十种编程语言,而且非常好用,值得一试。
1.问题的描述
java8stream和foreach哪个效率更高?
问题结论
超过150w数据:streamgtparallestreamgtsimple
以下150w数据:simplegtstreamgtparallestream
从性能上看:普通的foreach可以用于少量的数据,不需要在java8中使用几个新的,也不需要改变项目中已经使用的东西,10w的差距只有几毫秒。
2.测试案例
进口
进口
foreachmain的公共类{
公共静态voidmain(string[]args){
//实例化arraylist
listlintegergtarraylistnewarraylistltintegergt()
整数15000000
//插入10万条数据
for(inti0iltnumi){
㈠
}
listlintegergtresnewarraylistltgt()
()
//用foreach循环arraylist
longarrayforeachstarttim:数组列表中的整数){
(英寸)
}
longarrayforeachendtime()
(
用foreach循环arraylist(num)次:(arrayforeacheendtime-arrayforeachestarttime)毫秒)
()
//使用stream-foreach循环arraylist
长数组streamstarttime()
().foreach
长数组流结束时间()
(
使用stream-foreach循环arraylist(num)次:(arraystreamendtime-arraystreamstartime)毫秒)
()
//使用parallelstream-foreach循环arraylist
长数组并行流开始时间()
().foreach
长数组并行流结束时间()
(用parallelstream-foreach循环arraylist(num)需要一万次:
(数组并行流时间-数组并行流时间)毫秒)
}
}
2.1当编号为50000000时
使用foreach循环arraylist50亿次需要2840毫秒。
用stream-foreach循环arraylist5000万次:507毫秒。
用parallelstream循环arraylist5000万次-foreach时间:1168毫秒。
2.2当num为500000时
使用foreach循环arraylist500,000次需要13毫秒。
用stream-foreach循环数组列表500,000次。时间:25毫秒。
用parallelstream循环arraylist500,000次-foreach时间:35毫秒。
2.3当编号为5000时
使用foreach循环arraylist5000次需要时间:1毫秒。
用stream-foreach循环arraylist,000次:16毫秒。
用parallelstream-foreach循环arraylist,000次。时间:8毫秒。
最直观的感受就是stream的流式处理应该更快。这个假设需要事实来证明。运行测试代码后,发现并非如此。听觉是空的,眼见为实,品尝李子最简单的方法就是品尝它们。记住,写代码的时候,一定要以简单为原则。毕竟运行程序的硬件成本会随着时间不断降低。
作者:阳光夕阳,欢迎关注我的头条:偶尔。美式英语,主流java,告诉你不一样的码农生活。