george1703 Δημοσ. 26 Νοεμβρίου 2016 Δημοσ. 26 Νοεμβρίου 2016 Καλησπέρα, κάνω μια εργασία και θελω μια μέθοδος να δεχεται σαν ορισμα τα στοιχεια ενος πινακα απο μια αλλη μέθοδο στην ίδια κλάση Η μέθοδος που εχω στην μια κλάση είναι public void QuestionOfAthletics(){ questAns[1][0]="Πόσες συμμετοχές έχει η Εθνική Ελλάδος σε παγκόσμιο κύπελλο;"; questAns[1][1]="3"; questAns[1][2]="1"; questAns[1][3]="4"; questAns[1][4]="6";} public void setQues(int r,String a,String b, String c, String d, String e){ a=questAns[r][0]; b=questAns[r][1]; c=questAns[r][2]; d=questAns[r][3]; e=questAns[r][4]; Και στην main εχω Questions q2=new Questions(); ran=c.getArandomNumber(1); q2.QuestionOfAthletics(); q2.setQues(ran, quest, ans1, ans2, ans3, ans4); ArraysWithQuestions ko=new ArraysWithQuestions(quest,ans1,ans2,ans3,ans4); Το πρόγραμμα δεν τρεχει και μου βγάζει error στο q2.QuestionOfAthletis(); Exception in thread "main" java.lang.NullPointerException at Buzz.Questions.QuestionOfAthletics(Questions.java:48) at Buzz.Main.main(Main.java:37) C:\Users\George-TOSH\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java returned: 1 helppp...
rafinos Δημοσ. 26 Νοεμβρίου 2016 Δημοσ. 26 Νοεμβρίου 2016 Βάλε όλο τον κώδικά σου και βάλτον μέσα σε code. Είναι το κουμπάκι "<>" που έχει ο κειμενογράφος του site. Και λέω όλο τον κώδικα γιατί έχεις πράγματα που δεν γνωρίζουμε. Π.χ. Questions q2=new Questions(); Τι είναι αυτό; Επίσης ο πίνακάς σου που είναι δηλωμένος; κτλ. Αυτό που καταλαβαίνω εγώ είναι ότι το σφάλμα που σου βγάζει αφορά αν μπορώ να καταλάβω την QuestionOfAthletics(). Το array questAns από που προκύπτει;
george1703 Δημοσ. 27 Νοεμβρίου 2016 Μέλος Δημοσ. 27 Νοεμβρίου 2016 public class Main { public static void main(String[] args){ String quest = null ,ans1 = null,ans2 = null,ans3 = null,ans4 = null; int ran; Scanner scanner=new Scanner(System.in); Questions q2=new Questions();//Κλάση που περιεχει ερωτησεις int i=0; ran=c.getArandomNumber(1); q2.QuestionOfAnimals();//Μεθοδος της κλασης Question q2.setQues(ran, quest, ans1, ans2, ans3, ans4); ArraysWithQuestions ko=new ArraysWithQuestions(quest,ans1,ans2,ans3,ans4); ko.getRandom(); } public class Questions { public String questAns[][]; public String questAnsA[][]; public void QuestionOfAthletics(){ questAns[0][0]="Ερωτηση 1;"; questAns[0][1]="Απαντ 1"; questAns[0][2]="Απαντ 2"; questAns[0][3]="Απαντ 3"; questAns[0][4]="Απαντ 4"; questAns[1][0]="Πόσες συμμετοχές έχει η Εθνική Ελλάδος σε παγκόσμιο κύπελλο;"; questAns[1][1]="3"; questAns[1][2]="1"; questAns[1][3]="4"; questAns[1][4]="6"; questCorAns[0]="Απαντ 2"; questCorAns[1]="3"; } }
rafinos Δημοσ. 27 Νοεμβρίου 2016 Δημοσ. 27 Νοεμβρίου 2016 Δεν ξέρω τόσο καλά java, αλλά νομίζω ότι φταίει το ότι ορίζεις μη αρχικοποιημένους πίνακες. Δοκίμασε να βάλεις μέγεθος πχ [2][5] και [2] για να δεις αν θα δουλεψει.
george1703 Δημοσ. 27 Νοεμβρίου 2016 Μέλος Δημοσ. 27 Νοεμβρίου 2016 ναι οντως αυτο εφταιγε. το πέτυχα πριν λιγο... μηπως ξερεις πως τα στοιχεια του πίνακα μπορώ να τα βαλω σαν ορισμα σε μια αλλη μέθοδο?
rafinos Δημοσ. 27 Νοεμβρίου 2016 Δημοσ. 27 Νοεμβρίου 2016 Φτιάξε δομητή στην κλάση σου και όρισε δύο μεταβλητές ως ορίσματα. Μέσα στο Questions public Questions(){ } public Questions(Integer A, Integer B, Integer C){ questAns[][] = new String [A][B]; questCorAns[] = new String [C]; //παρατηρώ ότι αντί για αυτό ορίζεις ένα δισδιάστατο πίνακα με άλλο όνομα } Και στη main Questions q2 = new Questions(2,5,2); //ή κάτι τέτοιο.
george1703 Δημοσ. 27 Νοεμβρίου 2016 Μέλος Δημοσ. 27 Νοεμβρίου 2016 Τα int A.B.C τι ορισματα είναι? τι συμβολιζουν?
rafinos Δημοσ. 27 Νοεμβρίου 2016 Δημοσ. 27 Νοεμβρίου 2016 Τα μεγέθη των πινάκων. Είναι ακέραιοι αριθμοί. Κοίτα τα νούμερα που έχω γράψει είναι με βάση τα παραπάνω παραδείγματα του κώδικά σου.
hh12 Δημοσ. 30 Νοεμβρίου 2016 Δημοσ. 30 Νοεμβρίου 2016 Ποσταρε ολο το κωδικα σου και προσπαθησε να χρησιμοποιεις camelCase στην ονομασια τον μεταβλητων. Μετα θα σου βρουμε τη λυση να εισαι σιγουρος.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα