Jeg er ved at lære lidt java, og skulle lige lave et lille middelvaerdi-program der skulle læse nogle data fra en fil. Men jeg får fejlmeddelelser:
mv_fil.java:28: ')' expected while (!checkDouble(linie) AND (linie != null)) //Foerste linie med tal findes ^ mv_fil.java:28: non-static method checkDouble(java.lang.String) cannot be refere nced from a static context while (!checkDouble(linie) AND (linie != null)) //Foerste linie med tal findes ^ mv_fil.java:38: non-static method checkDouble(java.lang.String) cannot be refere nced from a static context if (checkDouble(linie)) //Tjekker om det er et t al, paa den givne linie. ^ 3 errors
Hvad gør jeg galt - hvordan skal jeg opbygge min fil, med den funktion jeg har. - Skal jeg så stadig have mine public static void main eller skal denne erstattes på anden måde? Please help?
import cs1.Keyboard; import java.io.*;
public class mv_fil { //Beregning af middelvaerdi af positive tal, //som indtastes. Der afsluttes med et ikke-positivt tal. public static void main(String[ ] args) { int antal; //Programmets variable double resultat, sum, largest, nyt_tal; String linie, file;
antal = 0; //initialisering sum = 0; largest = 0;
//Ask for filename System.out.print ("Indtast filnavn: "); file = new String (Keyboard.readString());
//laes fil try { FileReader fr = new FileReader(file); BufferedReader inFile = new BufferedReader (fr);
linie = inFile.readLine(); //Foerste linie læses while (!checkDouble(linie) AND (linie != null)) //Foerste linie med tal findes { linie = inFile.readLine(); }
nyt_tal = Double.parseDouble(linie); largest = nyt_tal;
while (linie != null) { if (checkDouble(linie)) //Tjekker om det er et tal, paa den givne linie. { ???BEREGNER } else { System.out.println ("FEJL"); }
System.out.println(nyt_tal); linie = inFile.readLine(); }
inFile.close(); } catch(FileNotFoundException exception) { System.out.println("Fejl. Filen blev ikke fundet!"); } catch (IOException exception) { System.out.println("Fejl!"); }
if (!(antal == 0)) { ???NOGET OUTPUT } else { System.out.println("Ingen tal indtastet. Gennemsnit blev ikke fundet!"); } }
Hvis vi tager mit stykke kode som udgangs-punkt (jeg har svært ved at få mig selv til at skrive et klasse-navn som starter med småt) så ser alternativet ud som:
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.