Új hozzászólás Aktív témák

  • Aethelstone
    addikt
    válasz geckowize üzenetére #6921

    Vagy ilyet is lehet, ha már a generikusokra rákérdeztél. Ez viszont működik explicit típusokkal is.

    (Természetesen a korábban vázolt megoldások tejesen jók)

    public class GenericTest<T extends Comparable<T>> {

    public T max(T a, T b) {
    return (a.compareTo(b) > 0 ? a : b);
    }

    public static void main(String[] args) {
    GenericTest<Double> gt1 = new GenericTest<Double>();
    System.out.println(gt1.max(10d, 12d));
    GenericTest<Integer> gt2 = new GenericTest<Integer>();
    System.out.println(gt2.max(12, 23));

    // És így tovább....
    }

    }

    Ennek a megoldásnak az az előnye, hogy tulajdonképpen mindenféle típusra lehet max() metódust írni. Kivéve természetesen a primitív típusokat, azokat a generikusok nem támogatják :(

Új hozzászólás Aktív témák