Hallo,
ich habe ein nerviges Problem und komme einfach nicht weiter. Wahrscheinlich liegt es allerdings an meiner mangelnden Kompetenz.
Folgende Situation:
GUI
Nachdem betätigen des Okay Button bekomme ich folgende Fehlermeldung:
Vielleicht kann mir ja jemand helfen!
grüße
ich habe ein nerviges Problem und komme einfach nicht weiter. Wahrscheinlich liegt es allerdings an meiner mangelnden Kompetenz.
Folgende Situation:
GUI
Java:
public class GUI extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JButton jButton = null;
private Formel1 formel1 = new Formel1(); // @jve:decl-index=0:
private JButton jButton1 = null;
private JLabel jLabel = null;
.
.
.
.
private JButton getJButton() {
if (jButton == null) {
jButton = new JButton();
jButton.setBounds(new Rectangle(498, 223, 90, 36));
jButton.setText("ok");
jButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
System.out.println("actionPerformed()"); // TODO Auto-generated Event stub actionPerformed()
formel1.bestimmeWeltmeister();
}
});
}
return jButton;
}
.
.
.
Java:
public class Formel1 {
final int AnzahlFahrer = 22;
private Fahrer[] dieFahrer = new Fahrer[AnzahlFahrer];
public Formel1() {
//Dummy Daten
dieFahrer[0]=new Fahrer("Fernando","Alonso");
dieFahrer[1]=new Fahrer("Schuhmacher","Michael");
dieFahrer[2]=new Fahrer("Räikkönen,","Kimi");
dieFahrer[3]=new Fahrer("Button,","Jenson");
//Alonso
dieFahrer[0].Platzierung[0] = 1;
dieFahrer[0].Platzierung[1] = 2;
dieFahrer[0].Platzierung[2] = 1;
dieFahrer[0].Platzierung[3] = 2;
dieFahrer[0].Platzierung[4] = 2;
dieFahrer[0].Platzierung[5] = 1;
dieFahrer[0].Platzierung[6] = 1;
dieFahrer[0].Platzierung[7] = 1;
dieFahrer[0].Platzierung[8] = 1;
dieFahrer[0].Platzierung[9] = 5;
//Michael
dieFahrer[0].Platzierung[0] = 2;
dieFahrer[0].Platzierung[1] = 6;
dieFahrer[0].Platzierung[2] = 0;
dieFahrer[0].Platzierung[3] = 1;
dieFahrer[0].Platzierung[4] = 1;
dieFahrer[0].Platzierung[5] = 2;
dieFahrer[0].Platzierung[6] = 5;
dieFahrer[0].Platzierung[7] = 2;
dieFahrer[0].Platzierung[8] = 2;
dieFahrer[0].Platzierung[9] = 1;
}
public void bestimmeWeltmeister() {
for (int i = 0; i < AnzahlFahrer; i++) {
dieFahrer[i].berechneGesamtpunktzahl();
dieFahrer[i].berechneSiege();
}
.
.
.
}
}
Java:
public class Fahrer extends Person {
int[] Platzierung = new int[18];
int Gesamtpunktzahl;
int Siege;
public Fahrer(String Nachname, String Vorname) {
super(Nachname, Vorname);
Gesamtpunktzahl = 0;
Siege = 0;
for (int i = 0; i < 18; i++)
Platzierung[i] = 0;
}
public void berechneSiege() {
Siege = 0;
for (int i = 0; i < 18; i++)
if (Platzierung[i] == 1) Siege++;
}
public void berechneGesamtpunktzahl() {
int Punkte = 0;
for (int i = 0; i < 18; i++) {
if (Platzierung[i] == 1) Punkte = Punkte + 10;
else if (Platzierung[i] == 2) Punkte = Punkte + 8;
else if (Platzierung[i] == 3) Punkte = Punkte + 6;
else if (Platzierung[i] == 4) Punkte = Punkte + 5;
else if (Platzierung[i] == 5) Punkte = Punkte + 4;
else if (Platzierung[i] == 6) Punkte = Punkte + 3;
else if (Platzierung[i] == 7) Punkte = Punkte + 2;
else if (Platzierung[i] == 8) Punkte = Punkte + 1;
}
Gesamtpunktzahl = Punkte;
}
}
Nachdem betätigen des Okay Button bekomme ich folgende Fehlermeldung:
Java:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at formel1.Formel1.bestimmeWeltmeister(Formel1.java:80)
at formel1.GUI$1.actionPerformed(GUI.java:41)
.
.
Vielleicht kann mir ja jemand helfen!
grüße