Dlaczego wyrzuca wyjątek java.lang.ClassCastException?

Dlaczego wyrzuca wyjątek java.lang.ClassCastException?
LI
  • Rejestracja:ponad 8 lat
  • Ostatnio:ponad 6 lat
0

Witam.
Napisałem taki o to kawałek kodu i zastanawiam się dlaczego wyrzuca mi wyjątek java.lang.ClassCastException: java.lang.Integer
Wiecie dlaczego ?
Wartość value to int.

Kopiuj
    public void show(){
        List<Node> temp;
        for(int i=0;i<list.size();i++) {
            temp = list.get(i).getList();
            for (int j = 0; j < temp.size(); j++)
                System.out.print((temp.get(j).getValue())+" ");
            System.out.println();
        }
    }
edytowany 1x, ostatnio: flowCRANE
Shalom
  • Rejestracja:około 21 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
1
  1. Wyjątek raczej nie pojawia się w tym kawałku który pokazałeś.
  2. Wklej łaskawie CAŁY wyjątek.
  3. Taki błąd oznacza że rzutujesz gdzieś wartość na jakis typ, ale ta wartość wcale nie jest tego typu.

"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"
S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
0

Tego typu wyjątki są jak masz np.

Kopiuj
   List<Shape> list = new LinkedList>();
   ArrayList<Shape> arrayList = (ArrayList<Shape>)list;

"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.