Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - camilortte

#1
Java / Re: Plantillas en Java
9 Marzo 2012, 02:28 AM
gracias por contestar.

la cuestión es que con la clase genérica , no puedo hacer comparaciones de mayor y menos entre tipos de datos, o no se si me complique.

la única forma de que pude sacar una plantilla presida a la del la función en c++ es así:

package paquete;

public class Generica  {

public <T extends Comparable> T generico(T valor1,T valor2){
if(valor1.compareTo(valor2)== 1){
return valor1;
}else{
return valor2;
}
}

}



así de esta forma ya puedo utilizar los métodos compareTo asiendo así una verdadera comparación.

pero no se si esto es lo mas "limpio" para esta solución.

saludos.
#2
Java / Plantillas en Java
6 Marzo 2012, 18:48 PM
Buen día a todos:  :D

les comento que , eh tenido problemas para manejar, digamos  de alguna forma tipos de datos genéricos. Personalmente en c++ lo lograba por medio de plantillas (templates) de la siguiente forma:

#include <iostream>

using namespace std;

template <typename T>
T mayor(T a, T b){
    if(a > b){
        return a;
    }else {
        return b;
    }
}

int main(int argc, char **argv)
{
    cout<<mayor("perro","gato")<<endl;     
    cout<<mayor(5,3)<<endl;
    cout<<mayor(4.23,5.69)<<endl;
    return 0;
}


esto me da como resultado:
perro
5
5.69

de esta forma , manejaba casi cualquier tipo de dato siendo muy sencillo.

ahora lo estoy intentando hacer en java , con la clase Object de esta forma:

package paquete;

public class GenericaMayor {   
    public Object mayor(Object valor1,Object valor2){
        if(valor1 >= valor2){        //aca el error.
            return valor1;
        }else{
            return valor2;
        }   
    }
}


pero eh tenido problemas en compilación..

la cuestión es ¿como puedo hacer esto que hacia en c++ , pero en java?. :huh: :huh: :huh:


gracias de antemano , saludo a todos.