Convertir números negativos a positivos

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);


    }
}

Post a Comment

Artículo Anterior Artículo Siguiente