Java 在5个不同的骰子中找到2对不同的骰子

Java 在5个不同的骰子中找到2对不同的骰子,java,arrays,duplicates,frequency,dice,Java,Arrays,Duplicates,Frequency,Dice,我有一个5个骰子的数组,我正在尝试检查它,看看是否有两个不同的对。假设我有(1,1,2,2,3)或(3,3,4,4,5),我希望它返回true。我怎样才能做到这一点呢?让第一个骰子是,int[]firstDice=newint[]{1,1,2,2,3} 设第二个骰子为,int[]secondDice=newint[]{3,3,4,4,5} 要检查每对骰子是否不同,只需同时对它们进行迭代(前提是骰子数量相同)。下面是一个方法示例: private boolean checkDifferentDi

我有一个5个骰子的数组,我正在尝试检查它,看看是否有两个不同的对。假设我有(1,1,2,2,3)或(3,3,4,4,5),我希望它返回true。我怎样才能做到这一点呢?

让第一个骰子是,int[]firstDice=newint[]{1,1,2,2,3}

设第二个骰子为,int[]secondDice=newint[]{3,3,4,4,5}

要检查每对骰子是否不同,只需同时对它们进行迭代(前提是骰子数量相同)。下面是一个方法示例:

 private boolean checkDifferentDice(int [] firstDice, int [] secondDice){
 boolean result = true;
 for (int i = 0; i < firstDice.length; i++)
 {
     if (firstDice[i] == secondDice[i])
      return false;
  }
    return result;
  }
private boolean checkdice(int[]firstDice,int[]secondDice){
布尔结果=真;
for(int i=0;i
这很简单。假设你有一个数组,ARR〔5〕={1,1,2,2,3 }; 您可以使用Set来解决此问题。我正在使用count变量跟踪这对

1,1,2,2,3-->我正在逐个迭代数组。当我第一次得了1分时,我就投进了一套。第二次,签入集合,若它包含,那个么它必须是一对

public bool findSet(int[] arr)
{ 
   HashSet<Integer> set = new HashSet<>();
   int count = 0; 
   for(int n : arr)
   {
      if(set.contains(n))
      count++;
      else
      set.add(n);
   }
   return count == 2;
 }
public bool findSet(int[]arr)
{ 
HashSet=newhashset();
整数计数=0;
用于(整数n:arr)
{
如果(集合包含(n))
计数++;
其他的
添加(n);
}
返回计数==2;
}

请先尝试一些东西,然后发布一个带有试用部分的问题。很好地为OP提供了代码。这正是为什么要这样做的原因!