kapamarous Δημοσ. 26 Ιουνίου 2010 Δημοσ. 26 Ιουνίου 2010 Καλημέρα σας. Έχω ενα πρόβλημα με το αντικειμενο Vector , όπως γραφω και στον τίτλο μου πετάει exception (java.lang.ArrayIndexOutOfBoundsException: 0 >= 0). Ο κώδικας που γεμίζω τα VectorS είναι αυτος >private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { Object source; quantityVector = new Vector(); sizeVector = new Vector(); for (int i = 0; i < jPanel2.getComponentCount(); i++) { source = jPanel2.getComponent(i); if (source instanceof JTextField) { JTextField myField = (JTextField) source; if (myField.getText().equals("")) { } else { quantityVector.addElement(myField.getText()); System.out.print(myField.getText()); countValues++; } if (source instanceof JComboBox) { JComboBox myCombo = (JComboBox) source; if (String.valueOf(myCombo.getSelectedItem()).toString().equals("")) { } else { sizeVector.addElement(String.valueOf(myCombo.getSelectedItem()).toString()); } } } } Και ο κώδικας που μου πεταει το Exception είναι αυτός > for (int j = 0; j < quantityVector.size(); j++) { try { Statement state = myConne.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); [b]int update = state.executeUpdate("INSERT INTO products_sizes (products_id,size_id,quantity) VALUES ('"[/b] + String.valueOf(products_id).toString() + "','" + String.valueOf(sizeVector.elementAt(j)).toString() + "','" + String.valueOf(quantityVector.elementAt(j)).toString() + "')"); if (update != 0) { jLabel23.setText("Η ενημέρωση έγινε με επιτυχία"); setEnableMainPanel(); setDisabledSizes(); } } catch (Exception ex) { ex.printStackTrace(); } } Στην σειρά που είναι με bold σταματάει ο compiler με Exception(java.lang.ArrayIndexOutOfBoundsException: 0 >= 0) Δεν μπορώ να καταλάβω τι φταίει . Ευχαριστώ εκ των προτέρων.
bnvdarklord Δημοσ. 26 Ιουνίου 2010 Δημοσ. 26 Ιουνίου 2010 O sizeVector εχει ιδιο μεγεθος με τον quantityVector?
kapamarous Δημοσ. 26 Ιουνίου 2010 Μέλος Δημοσ. 26 Ιουνίου 2010 O sizeVector εχει ιδιο μεγεθος με τον quantityVector? Ναι ακριβώς το ίδιο μέγεθος.¨οσα ειναι τα textfields ειναι και τα comboboxes. Τώρα παρατήρησα ότι την πρώτη τίμη του sizeVector και την πρωτη τιμη quantityVector τις δέχεται.Στην επομενη τιμη πεταει exception
bnvdarklord Δημοσ. 26 Ιουνίου 2010 Δημοσ. 26 Ιουνίου 2010 Το error αυτό ArrayIndexOutOfBoundsException σημαινει οτι βγαινεις απο τα όρια του πίνακα.. Οποτε σε ενα απο τα δύο sizeVector.elementAt(j) και quantityVector.elementAt(j) υπάρχει το πρόβλημα.(μπορει και στα 2)... Για βαλε ενα print πριν το for αυτο που τυπωνει τα sizes των 2 vector για να σιγουρευτουμε οτι ειναι οντως ιδια.
kapamarous Δημοσ. 26 Ιουνίου 2010 Μέλος Δημοσ. 26 Ιουνίου 2010 Τώρα παρατήρησα ότι την πρώτη τίμη του sizeVector και την πρωτη τιμη quantityVector τις δέχεται.Στην επομενη τιμη πεταει exception
virxen75 Δημοσ. 27 Ιουνίου 2010 Δημοσ. 27 Ιουνίου 2010 για δοκίμασε να σπάσεις την εντολή αυτή σε μικρότερες π.χ. > ............................ String a= String.valueOf(products_id).toString() + "','"; System.out.println("a no error"); String b= String.valueOf(sizeVector.elementAt(j)).toString() + "','"; System.out.println("b no error"); String c= String.valueOf(quantityVector.elementAt(j)).toString() + "')"; System.out.println("c no error"); String d="INSERT INTO products_sizes (products_id,size_id,quantity) VALUES ('"+ a+b+c; System.out.println("d no error"); System.out.println("d="+d); int update = state.executeUpdate(d); System.out.println("update no error"); ............. και πες τι αποτέλεσμα σου βγάζει κατά την εκτέλεση.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.