Java8的新特性steam流去⽐较两个数组是否相等
利⽤了Java8的新特性然后⽤collect(Collectors.joining())进⾏⽐较,虽然⽐较耗时,但是很好⽤是真的。
package list.demo;
import java.io.Serializable;
import java.util.*;
import java.util.stream.Collectors;
/**
java stream
* 判断两个集合是否相等
*/
public class CheckDiffList implements Serializable {
public static void main(String[] args){
List<String> list = new ArrayList<>();
List<String> list1 = new ArrayList<>();
for(int i =0; i <1000; i++){
list.add("test"+ i);
list1.add("test"+(i *2));
}
System.out.println(checkDiffrent4(list, list1));
}
/**
* 使⽤stream流去⽐较两个数组是否相等
* ⽅法5
*/
private static boolean checkDiffrent4(List<String> list, List<String> list1){
long st = System.nanoTime();
System.out.println("消耗时间为: "+(System.nanoTime()- st));
/** 先将集合转成stream流进⾏排序然后转成字符串进⾏⽐较 */
return list.stream().sorted().collect(Collectors.joining())
.equals(list1.stream().sorted().collect(Collectors.joining()));
}
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。