Exeception

Résolu
andoid95 -  
 andoid95 -
Bonjour
J'ai une hashmap <Integer, Car >,r une méthode Park(int place, Car C) mon probléme est de lever une exception de type IllegalStateException quand la place est occupée.
voici la méthode:

public void Park ( int numPlace, Car C)
{

if (Garage.containsKey(numPlace)) //Je teste si une clé égale à numPlace existe
{
try{}
catch(IllegalStateException e) {System.out.println("Place déjà occupée");}
}
else
Garage.put(numPlace, C);

}
quand je met dans le try Garage.put(numPlace, C); il écrase l'ancienne valeur et je veux pas qu'il le fasse c'est pourquoi j'ai rien mis à l'intérieur.

2 réponses

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Le try/catch c'est pour récupérer l'exception, si tu veux en lever une il te faut un throw

    public void Park(int numPlace, Car C) 
    {
        if (Garage.containsKey(numPlace))
            throw new IllegalStateException("Place déjà occupée");
        else
            Garage.put(numPlace, C);
    }
    0