Se enum implementa Comparable, quindi perché non può essere confrontato con < o>?Come non possiamo confrontare due valori enum con '<'?
public class Dream
{
public static void main(String... args)
{
System.out.println(PinSize.BIG == PinSize.BIGGER); //false
System.out.println(PinSize.BIG == PinSize.BIG); //true
System.out.println(PinSize.BIG.equals(PinSize.BIGGER));//false
System.out.println(PinSize.BIG > PinSize.BIGGERER);// compilation error
//can't be compared
System.out.println(PinSize.BIG.toString().equals(PinSize.BIGGER));// #4
PinSize b = PinSize.BIG ;
System.out.println(b instanceof Comparable);// true
}
}
enum PinSize { BIG, BIGGER, BIGGERER };
Che cosa ha a che fare questa domanda con SCJP/OCPJP? –
** Esame ** Sezione 1 **: dichiarazioni, inizializzazione e scoping * Sviluppo di codice che dichiara le classi (incluse le forme astratte e tutte le classi nidificate), le interfacce e le enumerazioni e include l'uso appropriato del pacchetto e dichiarazioni di importazione (incluse le importazioni statiche). * Sviluppare codice che dichiari, inizializzi e utilizzi primitive, matrici, enumerazioni e oggetti come variabili statiche, di istanza e locali. Inoltre, utilizzare gli identificatori legali per i nomi delle variabili. http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&p_exam_id=1Z0_851 – Joe