Gå til innhold

Anbefalte innlegg

dette skjer når eg prøver å kompilere en java fil i linux. noen som skjønner ka som er galt her?

 

javac Kvadrat.java

 

Found 1 semantic error compiling "Kvadrat.java":

   15.    ledd1 = Terminal.lesInt();
                  ^---------------^
*** Semantic Error: No accessible method with signature "lesInt()" was found in type "Terminal".

Found 1 lexical error in "Terminal.java":

   52.     public static String t\uffff\uffffmLinjen() {
                                  ^
*** Lexical Error: Illegal token ignored.

Found 1 syntax error in "Terminal.java":

   52.     public static String t\uffff\uffffmLinjen() {
           ^---------------------^
*** Syntax Error: ";" inserted to complete ClassBodyDeclaration

 

og så terminalen ..

 

import java.io.*;
import java.util.*;
/**
* Denne klassen tilbyr metoder for innlesing av heltall, flyttall og
* strenger fra terminalen.
*
* Pass på at du legger denne filen i samme katalog som programmene dine,
* og kompilerer den først.
*
* @version 2.0
* @author Rolf W. Rasmussen
* @author Khalid A. Mughal
* @author Torill Hamre
*/
public final class Terminal {
   private Terminal() {};
   private static Scanner leser = new Scanner(System.in);

   /**
    * Leser en int verdi fra terminalen.
    */
   public static int lesInt() {
       while (true)
           try { return leser.nextInt(); }
           catch (InputMismatchException ime) { reportError(); }
           catch (NoSuchElementException nsee) { reportError(); }
   }
   /**
    * Leser en double verdi fra terminalen.
    */
   public static double lesDouble() {
       while (true)
           try { return leser.nextDouble(); }
           catch (InputMismatchException ime) { reportError(); }
           catch (NoSuchElementException nsee) { reportError(); }
   }

   /**
    * Leser en streng fra terminalen.
    */
   public static String lesString() {
       while (true)
           try { return leser.next(); }
           catch (IllegalStateException ise) { reportError(); }
           catch (NoSuchElementException nsee) { reportError(); }
   }

   /**
    * Tømmer linjen for inndata, dvs leser alt som er (igjen) i den innværende linjen og
    * returnerer denne som et objekt av typen String.
    */
   public static String tømLinjen() {
       while (true)
           try { return leser.nextLine(); }
           catch (IllegalStateException ise) { reportError(); }
           catch (NoSuchElementException nsee) { reportError(); }
   }

   /**
    * Skriver ut en streng eller strengrepresentasjonen av en annen verdi
    * til terminalen og går videre til neste linje.
    */
   public static void promptln( Object str ) { System.out.println( str ); }

   /**
    * Skriver feilmelding og går videre til neste linje på terminalen
    * slik at brukeren kan taste inn verdi på nytt.
    */
   private static void reportError() {
       leser.nextLine();  // Tøm linjen først.
       System.out.println( "Feil i inndata. Prøv på nytt!" );
   }
}

Lenke til kommentar
Videoannonse
Annonse

fikk en haug med andre feilmeldinger når eg gjorde det.. finnes det ikkje en måte som gjør at den godtar tegn som æøå osv?

 

EDIT: testa med en annen terminal og då funka det hvertfall i windows.. funker sikkert i linux også :)

Endret av Pinguvin
Lenke til kommentar

Tror ikke det er Terminal-klassen det er noe galt med.

Har brukt den selv, både på windows-maskiner og linux (inf100).

 

Hvis du vil slippe å bruke terminalklassen kan du jo bruke den nye scannerklassen til java 1.5.

 

 

Legg inn dette øverst:

import java.uitl.Scanner;

**deklarasjon av mainmetode**

Scanner lexer = new Scanner(System.in);

 

lesing av heltall:

int heltall = lexer.nextInt();

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...