Java都确定列表中的元素相同

钟lin

我试图确定列表中的所有元素是否相同。如:

(10,10,10,10,10) --> true
(10,10,20,30,30) --> false

我知道哈希集可能会有所帮助,但我不知道如何用Java编写。

这是我尝试过的,但是没有用:

public static boolean allElementsTheSame(List<String> templist) 
{

    boolean flag = true;
    String first = templist.get(0);

    for (int i = 1; i< templist.size() && flag; i++)
    {
        if(templist.get(i) != first) flag = false;
    }

    return true;
}
Aioobe

使用Stream API(Java 8+)

boolean allEqual = list.stream().distinct().limit(2).count() <= 1

或者

boolean allEqual = list.isEmpty() || list.stream().allMatch(list.get(0)::equals);

使用Set

boolean allEqual = new HashSet<String>(tempList).size() <= 1;

使用循环:

boolean allEqual = true;
for (String s : list) {
    if(!s.equals(list.get(0)))
        allEqual = false;
}

OP的代码有问题

您的代码有两个问题:

  • 由于您在比较Strings,因此应使用!templist.get(i).equals(first)代替!=

  • 你有return true;应该的时候return flag;

除此之外,您的算法是可靠的,但是您可以flag通过执行以下操作来摆脱困境:

String first = templist.get(0);
for (int i = 1; i < templist.size(); i++) {
    if(!templist.get(i).equals(first))
        return false;
}
return true;

甚至

String first = templist.get(0);
for (String s : templist) {
    if(!s.equals(first))
        return false;
}
return true;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么通用列表中的每个元素都相同?(VB)

来自分类Dev

为什么通用列表中的每个元素都相同?(VB)

来自分类Dev

从python列表转换为char **并返回,从而使Cython中的所有元素都相同

来自分类Dev

如何在所有元素都相同的python中创建2D列表?

来自分类Dev

从列表中确定元素的类型

来自分类Dev

集合中的元素是否与Java中的列表相同?

来自分类Dev

确定两个列表中的元素是否相同的有效方法

来自分类Dev

合并列表中相同元素的列表

来自分类Dev

让列表中的每个元素都包含其他元素

来自分类Dev

列表中的 Tkinter Entry 小部件都保存相同的数据

来自分类Dev

列表中的所有项目都获得相同的值

来自分类Dev

Java。抽象元素列表。如何确定元素类型

来自分类Dev

确定一个列表中的Java 8组成字谜元素

来自分类Dev

Erlang在列表中查找连续的相同元素

来自分类Dev

Java Deflater,现在和将来都具有相同的结果(确定性)

来自分类Dev

检查元组列表中元组的第二个元素是否都相同

来自分类Dev

Python-如何确保嵌套列表中元素的所有长度都相同?

来自分类Dev

如果python中的元素相同,如何交换列表中的元素?

来自分类Dev

确定数组 A 中的所有元素是否都存在于数组 B 中

来自分类Dev

元素相同的两个列表中的公共元素

来自分类Dev

如何确定哪些列表元素包含R中的记录

来自分类Dev

Java的8流 - 如何合并从具有相同的字段列表中的元素,以一个元素和总结

来自分类Dev

从Java中的列表返回元素

来自分类Dev

如何使用java中的列表结构确定java中当前元素之后是否还有另一个元素

来自分类Dev

std :: sample()每次都返回相同的元素

来自分类Dev

创建每个元素都相同的大矩阵

来自分类Dev

数组复制循环使每个元素都相同

来自分类Dev

在Python中为每个列表元素添加引号(所有元素都包含斜杠“ /”)

来自分类Dev

如何对嵌套列表中的每个元素都符合的嵌套列表进行排序

Related 相关文章

  1. 1

    为什么通用列表中的每个元素都相同?(VB)

  2. 2

    为什么通用列表中的每个元素都相同?(VB)

  3. 3

    从python列表转换为char **并返回,从而使Cython中的所有元素都相同

  4. 4

    如何在所有元素都相同的python中创建2D列表?

  5. 5

    从列表中确定元素的类型

  6. 6

    集合中的元素是否与Java中的列表相同?

  7. 7

    确定两个列表中的元素是否相同的有效方法

  8. 8

    合并列表中相同元素的列表

  9. 9

    让列表中的每个元素都包含其他元素

  10. 10

    列表中的 Tkinter Entry 小部件都保存相同的数据

  11. 11

    列表中的所有项目都获得相同的值

  12. 12

    Java。抽象元素列表。如何确定元素类型

  13. 13

    确定一个列表中的Java 8组成字谜元素

  14. 14

    Erlang在列表中查找连续的相同元素

  15. 15

    Java Deflater,现在和将来都具有相同的结果(确定性)

  16. 16

    检查元组列表中元组的第二个元素是否都相同

  17. 17

    Python-如何确保嵌套列表中元素的所有长度都相同?

  18. 18

    如果python中的元素相同,如何交换列表中的元素?

  19. 19

    确定数组 A 中的所有元素是否都存在于数组 B 中

  20. 20

    元素相同的两个列表中的公共元素

  21. 21

    如何确定哪些列表元素包含R中的记录

  22. 22

    Java的8流 - 如何合并从具有相同的字段列表中的元素,以一个元素和总结

  23. 23

    从Java中的列表返回元素

  24. 24

    如何使用java中的列表结构确定java中当前元素之后是否还有另一个元素

  25. 25

    std :: sample()每次都返回相同的元素

  26. 26

    创建每个元素都相同的大矩阵

  27. 27

    数组复制循环使每个元素都相同

  28. 28

    在Python中为每个列表元素添加引号(所有元素都包含斜杠“ /”)

  29. 29

    如何对嵌套列表中的每个元素都符合的嵌套列表进行排序

热门标签

归档