java - 找出数组是否包含唯一元素

标签 java arrays unique hashset

我试图找出数组中的所有元素是否都是唯一的。 PS:我还是个新手。因此,如果存在错误的方法,请忽略。

public static boolean isUnique(int[] arr)
{
    Integer[] integ = new Integer[arr.length];
    for (int i = 0; i < arr.length; i++)
    {
        integ[i] = arr[i];
    }
    Set<Integer> temp = new HashSet<Integer>(Arrays.asList(integ));

    for (int j = 0; j < integ.length; j++)
    {
      temp.add(integ[j]);
    }
    if(temp.size()==arr.length)
    {
        return true;
    }
    else return false;

最佳答案

使用 Java-8 方法会更容易:

public static boolean isUnique(int[] arr) {
    return IntStream.of(arr).distinct().toArray().length == arr.length;
}

关于java - 找出数组是否包含唯一元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43514682/

相关文章:

java - 地址已在使用 : JVM_Bind java

php - 我可以将数组放入 Mysql 查询中吗?

python - 从不同的数组和数组/numpy 模块生成数组?

php - MySQL 无法区分大的唯一值

python - 检查并索引 numpy 数组中的非唯一/重复值

mongoose - 如何独立处理 Mongoose 中多个唯一性的错误?

java - Ibatis 支持 Sets 作为参数类吗?

Java 循环中的 boolean 条件

java - 错误: incompatible types: SnekEngine cannot be converted to Context

java - 如何将看起来像数组的字符串转换为实际的对象数组?