Hallo zusammen,
ich bin seit einigen Stunden dran eine Methode mit dem Datentyp einer Hauptklasse in einer Anwendungsklasse zu programmieren, aber komme nicht weiter. Ich hoffe Ihr könnt mir bei diesem Problem weiterhelfen und erklären können wo bei mir der Fehler ist, weil im Internet finde ich nichts dazu. Es wird mir nur der Funktionskopf als falsch angezeigt mit der Meldung:
This method must return a result of type MessR
Hier ist meine Anwendungsklasse, übrigens sollte ich in den Konstruktor laut Vorgabe ("", null, -1) einsetzen und nur eine get-Methode programmieren für ctr:
ich bin seit einigen Stunden dran eine Methode mit dem Datentyp einer Hauptklasse in einer Anwendungsklasse zu programmieren, aber komme nicht weiter. Ich hoffe Ihr könnt mir bei diesem Problem weiterhelfen und erklären können wo bei mir der Fehler ist, weil im Internet finde ich nichts dazu. Es wird mir nur der Funktionskopf als falsch angezeigt mit der Meldung:
This method must return a result of type MessR
Java:
public class MessR {
public String mnam;
public double mw[];
private int ctr;
public int getCTR() {
return ctr;
}
public MessR(String mnam2, double mw2[], int ctr2) {
mnam = mnam2;
mw = mw2;
ctr = ctr2;
}
double mittel(int ctr3, double mw3[]) {
int i;
double speicher = 0;
switch(ctr3) {
case 1: for(i=0; i<mw3.length; ++i) {
speicher += mw3[i];
}
speicher = speicher/mw3.length;
return speicher;
//break;
default: System.out.println("Fehlermeldung");
return -999.99;
//break;
}
}
}
Hier ist meine Anwendungsklasse, übrigens sollte ich in den Konstruktor laut Vorgabe ("", null, -1) einsetzen und nur eine get-Methode programmieren für ctr:
Java:
import java.io.*;
public class MessAnw {
public static void main(String args[]) {
csv2MessR();
} //ENDE DER MAIN() !!!!!
static MessR csv2Messr (String ecsv) {
int i;
String b[];
MessR a = new MessR("", null, 1);
ecsv = einstring();
b = ecsv.split(";");
for(i=0; i<b.length; ++i) {
if(i==0) {
try {
a.mnam = b[0];
} catch (Exception e) {
System.out.println("Fehlermeldung");
a = new MessR("", null, -1);
}
}
if(i>0) {
try {
a.mw[i-1] = Double.parseDouble(b[i]);
} catch(Exception e) {
System.out.println("Fehlermeldung");
a = new MessR("", null, -1);
}
} //ENDE IF SCHLEIFE FÜR I >0
a = new MessR(a.mnam, a.mw, 1);
}//ENDE FOR-SCHELIFE
}//ENDE FUNKTION
public static String einstring() //Funktion zum Einlese eines Strings
{ int rc;
String st1= new String();
BufferedReader in
= new BufferedReader(new InputStreamReader(System.in));
do
{ rc=0; //Fehlervermutung
try
{ st1=in.readLine().trim();
rc=1; //kein Fehler <=> rc=1
}
catch(IOException e)
{ System.out.println("Schwerer Inputfehler: "+e.getMessage());
System.out.println("Bitte korrekten Stringwert eingeben:");
}
} while (rc==0);
return st1;
}
}