Avatar billede Slettet bruger
25. april 2004 - 13:09 Der er 1 kommentar og
1 løsning

LinkedList.toArray giver mig problemer

Hejsa eksperter, jeg har et problem med følgende kode-stump (lnierne 69-76 begge incl.):

LinkedList classNames = new LinkedList();
        for (int i=0; i<files.length; i++) {
            String className = PATH_TO_SEATING_CALCS + "." + files[i].substring(0, files[i].indexOf("."));
            System.out.println("Added [ "+className+" ] to list");
            classNames.add(classNames);
        }

        return (String[])classNames.toArray(new String[classNames.size()]);

De giver mig følgende Exception:

java.lang.ArrayStoreException
    at java.util.LinkedList.toArray(LinkedList.java:657)
    at application.utils.SeatingUtilities.getSeatingCalcClassNames(SeatingUtilities.java:77)
    at application.utils.SeatingUtilities.getValidSeatingCalcs(SeatingUtilities.java:35)
    at Test$2.actionPerformed(Test.java:72)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
    at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
    at java.awt.Component.processMouseEvent(Component.java:5100)
    at java.awt.Component.processEvent(Component.java:4897)
    at java.awt.Container.processEvent(Container.java:1569)
    at java.awt.Component.dispatchEventImpl(Component.java:3615)
    at java.awt.Container.dispatchEventImpl(Container.java:1627)
    at java.awt.Component.dispatchEvent(Component.java:3477)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
    at java.awt.Container.dispatchEventImpl(Container.java:1613)
    at java.awt.Window.dispatchEventImpl(Window.java:1606)
    at java.awt.Component.dispatchEvent(Component.java:3477)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

Og jeg er FULDSTÆNDIG blank, efter hvad jeg kan læse mig frem til via. sun's forums, samt dokumentationen til Java bliver ArrayStoreException kun smidt (thrown) hvis et af elementerne i LinkedListen ikke er af den angivne type... og ALLE elementerne er jo Strings (i min kode)....

PLEAAAASE help, jeg er rimelig desperat (men på den gode måde ;-))

På forhånd tak, Anders
Avatar billede Slettet bruger
25. april 2004 - 13:10 #1
Det var så en gammel *suk* StackTrace jeg gav jer der.... her er den nye:

java.lang.ArrayStoreException
    at java.util.LinkedList.toArray(LinkedList.java:657)
    at application.utils.SeatingUtilities.getSeatingCalcClassNames(SeatingUtilities.java:76)
    at application.utils.SeatingUtilities.getValidSeatingCalcs(SeatingUtilities.java:35)
    at Test$2.actionPerformed(Test.java:72)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
    at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
    at java.awt.Component.processMouseEvent(Component.java:5100)
    at java.awt.Component.processEvent(Component.java:4897)
    at java.awt.Container.processEvent(Container.java:1569)
    at java.awt.Component.dispatchEventImpl(Component.java:3615)
    at java.awt.Container.dispatchEventImpl(Container.java:1627)
    at java.awt.Component.dispatchEvent(Component.java:3477)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
    at java.awt.Container.dispatchEventImpl(Container.java:1613)
    at java.awt.Window.dispatchEventImpl(Window.java:1606)
    at java.awt.Component.dispatchEvent(Component.java:3477)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

Og det skal lige siges at det er klassen SeatingUtilities.java som der arbejdes med ;-)
Avatar billede Slettet bruger
25. april 2004 - 13:14 #2
DOHHHHH....

classNames.add(classNames);

skal naturligvis være

classNames.add(className);

.... jeg lukker her, ups ups ups ....
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester