class ConfrontoAlfabetico{ public static void main( String[] argg ){ // DA COMPLETARE... } /* // Esempio di chiamata: short vienePrima = ConfrontoAlfabetico.cfr( "alpha", "beta" ); // Esempio di chiamata: int vienePrima = "alpha".compareTo( "beta" ); public static short cfr( String luna, String laltra ){ // return luna.compareTo( laltra ); int quantoDiPeggio = (luna.length() < laltra.length()) ? luna.length() : laltra.length(); for (int i = 0; i < quantoDiPeggio ; i++ ) { if ( luna.charAt( i ) < laltra.charAt( i ) ) return -1; if ( laltra.charAt( i ) < luna.charAt( i ) ) return 1; } if ( luna.length( ) < laltra.length( ) ) return -1; if ( laltra.lenght( ) < luna.length( ) ) return 1; return 0; } */ // Esempio di chiamata: short vienePrima = ConfrontoAlfabetico.cfr( "alpha", "beta" ); // Esempio di chiamata: short vienePrima = cfrSERVIZIO( "alpha", "beta" ); public static Short cfr( String luna, String laltra ){ // effettua il confronto alfabetico fra stringhe if ( luna == null || laltra == null ) return null; // risposta int esito = cfrSERVIZIO( luna.toLowerCase(), laltra.toLowerCase() ); return (short) (( esito > 0 ) ? 1 : (esito < 0 ) ? -1 : 0); } private static int cfrSERVIZIO( String luna, String laltra ){ int finQui = luna.length(), // termine della scansione finLi = laltra.length(); if (finQui > finLi ) finQui = finLi; for (int i = 0; i < finQui ; i++ ) if ( luna.charAt( i ) != laltra.charAt( i ) ) return luna.charAt( i ) - laltra.charAt( i ); return luna.length( ) - laltra.length( ); } }