如何检查ArrayList的所有元素在java中是否相同?
假设存在一个整数类型的ArrayListarr如何检查ArrayList的所有元素在java中是否相同?,java,Java,假设存在一个整数类型的ArrayListarr ArrayList<Integer> arr = new Arraylist<>(5); arr.add(15); arr.add(15); arr.add(15); ArrayList arr=新的ArrayList(5); arr.add(15); arr.add(15); arr.add(15); 那么现在,如果所有值都相同或不相同,我如何检查我的ArrayList呢?您可以使用Streams: if (arr.
ArrayList<Integer> arr = new Arraylist<>(5);
arr.add(15);
arr.add(15);
arr.add(15);
ArrayList arr=新的ArrayList(5);
arr.add(15);
arr.add(15);
arr.add(15);
那么现在,如果所有值都相同或不相同,我如何检查我的ArrayList呢?您可以使用
Stream
s:
if (arr.stream().distinct().count() <= 1) {
}
根据equals()
方法,只要列表的所有元素都相等,这两种方法都可以工作
编辑:即使列表
是空的,我也对返回true
做了一点小小的修改,因为你可以说在一个空的列表
中所有元素都是相等的。检查这篇文章:我更喜欢第一个。@ManojBanik我也是,但我添加了第二个选项,以防使用Java 8之前的版本。
if (new HashSet<>(arr).size() <= 1) {
}