Class ComparatoreSerieDiDadi

java.lang.Object
  extended by ComparatoreSerieDiDadi
All Implemented Interfaces:
java.util.Comparator

public class ComparatoreSerieDiDadi
extends java.lang.Object
implements java.util.Comparator

Confronta due serie di dati.

Version:
1.0.0
Author:
Alessio Treglia

Constructor Summary
ComparatoreSerieDiDadi()
           
 
Method Summary
 int compare(java.lang.Object arg0, java.lang.Object arg1)
          Confronta due serie di dadi.
 int getDadiDaConfrontare(int a, int b)
          Confronta due numeri e sceglie il piccolo.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Comparator
equals
 

Constructor Detail

ComparatoreSerieDiDadi

public ComparatoreSerieDiDadi()
Method Detail

compare

public int compare(java.lang.Object arg0,
                   java.lang.Object arg1)
Confronta due serie di dadi. Prende in considerazione il minor numero x di dadi, i.e.:
 ...
 
 SerieDiDadi a = new SerieDiDadi(3);
 SerieDiDadi b = new SerieDiDadi(2);
 
 int x = ( a.getNumeroDadi() < b.getNumeroDadi() ) ? a.getNumeroDadi() : b.getNumeroDadi();
 
 ...
 
nel caso sopra descritto x = 2. Stabilito il numero di oggetti da confrontare, esegue il confronto, restituendo un numero pari al numero di Dado pił grandi contenuti nella lista dell'oggetto arg0 rispetto ai Dado contenuti nella lista di arg1, i.e.:

(gli oggetti sono quelli dell'esempio di sopra)

 ...
 
 ComparatoreSerieDiDati c = new ComparatoreSerieDiDati();
 
 System.out.println(a);                                 // Visualizza -->       [ 4 ]   [ 3 ]   [ 3 ]
 System.out.println(b);                                 // Visualizza -->       [ 6 ]   [ 3 ]   [ 1 ]
 
 int z = c.compare(a,b);                                        // Confronta i due oggetti
 
 System.out.println(z);                                 // Visualizza -->       1
 

NOTA: in caso di paritą di punteggio, viene considerato maggiore il dado di arg1. Per capire il motivo di questa scelta si rimanda alle regole del gioco.

Specified by:
compare in interface java.util.Comparator
Parameters:
arg0 - operando di sinistra
arg1 - operando di destra
Returns:
numero di Dado pił grandi contenuti nella collezione di arg0 rispetto ai Dado della collezione di arg1.

getDadiDaConfrontare

public int getDadiDaConfrontare(int a,
                                int b)
Confronta due numeri e sceglie il piccolo.

Parameters:
a - primo numero
b - secondo numero
Returns:
il minore fra i due