Exercice : SafeVarargs

Code source de l'énoncé

Soit la classe :
class TestSafeVarargs{
    
    public static void main(String[] args){
        System.out.println(max(12, 3, 8, 210));
    }

    // pas besoin ici de SafeVararg car pas de type générique
    public static int max(int premier, int... lesAutres) {
        int max = premier;
        for(int i : lesAutres) {
            if (i > max) max = i;
        }
        return max;
    }
}
- Compiler cette classe et vérifier que la compilation ne génère aucun warning.
- Modifier cette classe de manière à ce que max() travaille sur une liste de sous-classe d'entiers :
static <T extends Integer> T max(T premier, T... lesAutres){...}
- Vérifier que la compilation génère un warning ; utiliser -Xlint:unchecked pour avoir les détails du warning.
- Modifier la classe pour que la compilation passe sans warning.