Este código pues no es muy llamativo que digamos ya que su única función es poner un numero negativo en positivo ejemplo: Si pasamos -40 como parámetro nos devolverá 4. Bueno, espero y les sirva de algo
package pruebasalgoritmos; /** * * Gamma */ public class Positivos { public static Object positivos(Object o) { int numint = 0; double numdoble = 0; Object result = 0; //VALIDA QUE EL PARAMETRO NO SEA NULO if (o != null) { //USAMOS TRY CATCH PARA CACHAR LA EXCEPCION try { // HACEMOS EL CASTING A ENTERO SI NO ES ENTERO MANDARA AL SIGUIENTE TRY CATCH numint = (Integer) o; // VALIDA SI EL NUMERO ES MENOR DE CERO LO PASE A ENTERO SI NO LO DEJE IGUAL if (numint < 0) { // CONVERTIMOS A ENTERO EL NUMERO numint *= -1; } //ASIGNAMOS EL RESULTADO A LA VARIABLE QUE SE REGRESARA result = numint; } catch (ClassCastException e) { //USAMOS TRY CATCH PARA CACHAR LA EXCEPCION try { // HACEMOS EL CASTING A DOUBLE SI NO ENTRA AQUI MANDARA EL MENSAJE DE LA EXCEPCION numdoble = (Double) o; // VALIDA SI EL NUMERO ES MENOR DE CERO LO PASE A ENTERO SI NO LO DEJE IGUAL if (numdoble < 0) { // CONVERTIMOS A ENTERO EL NUMERO numdoble *= -1; } //ASIGNAMOS EL RESULTADO A LA VARIABLE QUE SE REGRESARA result = numdoble; } catch (ClassCastException ex) { //SE IMPRIME LA EXCEPCION EN CASO DE QUE EXISTA System.out.println("El parametro no es un numero " + ex.getMessage()); } } } else { //MANDAMOS EL MENSAJE DE QUE EL PARMETRO ES UN NULO System.out.println("El valor es un nulo"); } // REGRESAMOS EL RESULTADO DE LA OPERACION return result; } public static void main(String a[]) { //SE LLAMA EL METODO Y SE ASIGNA A UNA VARIABLE APOLICANDO SU RESPECTIVO CASTING double test = (Double) positivos(-500.5); int testint = (Integer) positivos(-150); // SE IMPRIMEN LOS VALORES EN CONSOLA System.out.println("TEST:::" + test); System.out.println("TESTINT:::" + testint); } }
Publicar un comentario