URGENT - Fejl i javakode - Need help

Tags:    java

Jeg får en fejl når jeg prøver at compile koden her:

import java.util.*;

public class Studie {
private final static int N = 21;
private final static int datU1 = 0;
private final static int datU2 = 1;
private final static int datU3 = 2;
private final static int datU4 = 3;
private final static int datU5 = 4;
private final static int datU6 = 5;
private final static int datU7 = 6;
private final static int datU8 = 7;
private final static int datG1 = 8;
private final static int datG2 = 9;
private final static int eøU1 = 10;
private final static int eøU2 = 11;
private final static int eøU3 = 12;
private final static int orgU1 = 13;
private final static int orgU2 = 14;
private final static int orgU3 = 15;
private final static int orgU4 = 16;
private final static int samfU1 = 17;
private final static int samfU2 = 18;
private final static int samfU3 = 19;
private final static int samfU4 = 20;

public HashMap ListeAfStuderende = new HashMap();
private Opgave[] opgaver = new Opgave[N];

public void addOpgave(int ix, String titel, String fag) {
opgaver[ix] = new Opgave(titel, fag);
}

public void printStuderende(String cpr) {
ListeAfStuderende stud = (ListeAfStuderende)ListeAfStuderende.get(cpr);
System.out.println(stud);
for(int i = 0; i < N; i++) {

//HER OPSTÅR FEJLEN TILSYNELADENE:
System.out.println(" " + opgaver + " : " + (stud.getOpgaver(i) ? "bestået" : "ikke bestået"));
}
}

public void printOpgave(int ix) {
System.out.println(opgaver[ix]);
Iterator it = ListeAfStuderende.keySet().iterator();
while(it.hasNext()) {
String cpr = (String)it.next();
ListeAfStuderende stud = (ListeAfStuderende)ListeAfStuderende.get(cpr);
if(stud.getOpgaver(ix)) {
System.out.println(" " + stud);
}
}
}

public void eksamen(int ix, String navn, boolean result) {
ListeAfStuderende stud = (ListeAfStuderende)ListeAfStuderende.get(navn);
stud.setOpgaver(ix, result);
}

public static void main(String[] args) {
Studie s = new Studie();
s.addOpgave(datU1, "Ugeopgave nr. 1", "Datalogi");
s.addOpgave(datU2, "Ugeopgave nr. 2", "Datalogi");
s.addOpgave(datU3, "Ugeopgave nr. 3", "Datalogi");
s.addOpgave(datU4, "Ugeopgave nr. 4", "Datalogi");
s.addOpgave(datU5, "Ugeopgave nr. 5", "Datalogi");
s.addOpgave(datU6, "Ugeopgave nr. 6", "Datalogi");
s.addOpgave(datU7, "Ugeopgave nr. 7", "Datalogi");
s.addOpgave(datU8, "Ugeopgave nr. 8", "Datalogi");
s.addOpgave(datG2, "Godkendelsesopgave nr. 1", "Datalogi");
s.addOpgave(datG1, "Godkendelsesopgave nr. 2", "Datalogi");
s.addOpgave(eøU1, "Ugeopgave nr. 1", "Erhvervøkonomi");
s.addOpgave(eøU2, "Ugeopgave nr. 2", "Erhvervøkonomi");
s.addOpgave(eøU3, "Ugeopgave nr. 3", "Erhvervøkonomi");
s.addOpgave(orgU1, "Ugeopgave nr. 1", "Organisation");
s.addOpgave(orgU2, "Ugeopgave nr. 2", "Organisation");
s.addOpgave(orgU3, "Ugeopgave nr. 3", "Organisation");
s.addOpgave(orgU4, "Ugeopgave nr. 4", "Organisation");
s.addOpgave(samfU1, "Ugeopgave nr. 1", "Samfundsfag");
s.addOpgave(samfU2, "Ugeopgave nr. 2", "Samfundsfag");
s.addOpgave(samfU3, "Ugeopgave nr. 3", "Samfundsfag");
s.addOpgave(samfU4, "Ugeopgave nr. 4", "Samfundsfag");
s.eksamen(datU1, "1", true);
s.eksamen(orgU1, "7", true);
s.eksamen(orgU3, "6", false);
s.printStuderende("1");
s.printOpgave(orgU2);
}
}

class ListeAfStuderende2 {
private String cpr;
private String navn;
private boolean[] opgaver;

public ListeAfStuderende2(String cpr, String navn, int antal) {
this.cpr = cpr;
this.navn = navn;
opgaver = new boolean[antal];
for(int i = 0; i < antal; i++) {
opgaver = false;
}
}

public String getCpr() {
return cpr;
}

public void setCpr(String cpr) {
this.cpr = cpr;
}

public String getNavn() {
return navn;
}

public void setNavn(String navn) {
this.navn = navn;
}

public boolean getOpgaver(int ix) {
return opgaver[ix];
}

public void setOpgaver(int ix, boolean val) {
opgaver[ix] = val;
}

public String toString() {
return (navn + "(" + cpr + ")");
}
}

... og denne klasse knytter sig til:

import java.util.*;

public class ListeAfStuderende {
private final static int N = 4;
private HashMap studerende = new HashMap();

public void TilføjStuderende(String cpr, String navn) {
studerende.put(cpr, new Studerende(cpr, navn, N));
}

public static void main(String[] args) {
ListeAfStuderende l = new ListeAfStuderende();
l.TilføjStuderende("1", "Ib");
l.TilføjStuderende("2", "Bo");
l.TilføjStuderende("3", "Eva");
l.TilføjStuderende("4", "Hans");
l.TilføjStuderende("5", "Per");
l.TilføjStuderende("6", "Jan");
l.TilføjStuderende("7", "Lis");
l.TilføjStuderende("8", "Ulla");
l.TilføjStuderende("9", "Sys");
l.TilføjStuderende("10", "Lars");
l.TilføjStuderende("11", "Ole");
l.TilføjStuderende("12", "Ove");
l.TilføjStuderende("13", "Lise");
l.TilføjStuderende("14", "Per");
l.TilføjStuderende("15", "Jacob");
l.TilføjStuderende("16", "Sven");
l.TilføjStuderende("17", "Tina");
l.TilføjStuderende("18", "Tove");
l.TilføjStuderende("19", "Tom");
l.TilføjStuderende("20", "Hans");
}
}




6 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
prøv lige at lave denne sætning om:
//HER OPSTÅR FEJLEN TILSYNELADENE:
System.out.println(" " + opgaver + " : " + (stud.getOpgaver(i) ? "bestået" : "ikke bestået"));

Det kan godt være den burde virke, men prøv at skrive den over i to sætninger (if-else)

Det øger også forståelsen at bruge den normale if-else sætning.

-------------------------------
Hilsen Jimmi Westeberg
http://www.westsworld.dk



Har du ikke sat stud til den forkerte class?
burde det ikke være ListeAfStudrende2?
-----------------------------------------------------------------------------

Min side ->www.the-hive.dk/~donp/



Jeg får en fejl når jeg prøver at compile koden her:

En fejl siger du. Ikke så godt. Hvad for en fejl får du ?



Virkede ikke... heller ikke med if sætninger.

Får denne fejl når jeg compiler:
cannot resolve symbol - method getOpgaver (int)



kunne det evt. være muligt at se resten af klasserne, så man rent faktisk kan køre programmet for at finde en løsning?



t