2016-04-05 21 views
0

と比較したいのですが、オブジェクトArrayを持つArrayListがあります。 質問は次のとおりです。**私は、arraylistのオブジェクトPlayerの配列の**要素を他の配列と比較したいと思います。ArrayList <Player>の配列内のすべての要素をint []配列

//Method that calculates no of right rows and puts it to the player 
public static void NoOfRights(ArrayList<Player> a, int[] b){ 
    int count = 0; 
    for(int i = 0; i < a.size(); i++){ 
     Player player = a.get(i); 
     for(int j = 0; j < player.getRows();j++) { 

       boolean isEqual = isEquals(player.getRows(j), b, 7); 
       if(isEqual == true){ 
        count++; 
       } 
       if(count == 7){ 
        player.noOf7right(count); 

       } 
       else if(count == 6){ 
        player.noOf6right(count); 
       } 
       else if(count == 5){ 
        player.noOf5right(count); 
       } 

のisEqualメソッドです:

private static boolean isEquals(int[] j, int[] b, int size) { 

    for(int i = 0; i<size; i++) { 
     if(j[i] == b[i]) { 
      return true; 
     } 
    } 

    return false; 
} 

.getRows()である

この

が、これはこれまでのところ、比較のために私のコードで私のクラスのプレーヤー

public class Player{ 

    private String name; 
    private int bet; 
    private ArrayList <int []> lottorows; 

ですプレーヤーの方法:

public int[] getRows(int a){ 
     return lottorows.get(a); 
    } 

私はあなたの助けに感謝します! ありがとうございました

+3

何が問題なのですか? –

+1

具体的な問題を明確にしたり、詳細を追加して必要なものを正確に強調してください。現在書かれているとおり、あなたが求めていることを正確に伝えるのは難しいです。この質問を明確にする方法については、How to Askページを参照してください。 –

+0

Playerが他の配列と保持している要素を比較したい。 – JohnBanana

答えて

4

これは配列の比較になります。あなたは使うことができ :

if(Arrays.equals(array1, array2)) count++;

+0

配列の要素を比較したい。プレイヤーから最初にフェッチし、それらを比較すると、すべての配列には7個のelemetsしか含まれません – JohnBanana

0

プレーヤークラスでこの行を追加します

private int SumOfRIghts; 

と、この2つの方法

public void setSumOfRights(int sum){ 
    SumOfRights = sum; 
} 

public int NumOfRights(int [] numbers){ 
    int count = 0; 
    for(int i = 0; i<lottorows.size();i++){ 
     for (j = 0; j<numbers.lenght){ 
      if(lottorows.get(i)==numbers[j]) count++; 
     } 
    } 
} 
return count; 

、その後、あなたが行うことができ

public static void sumOfRights(ArrayList<Player> a, int[] b){ 
    for (int i = 0; i < a.size(); i++) { 
     a.get(i).setSumOfRights(a.get(i).NumOfRights(b)); 
    } 
}