ubuntuusers.de

Java will den String nicht einlesen

Status: Gelöst | Ubuntu-Version: Ubuntu 12.04 (Precise Pangolin)
Antworten |

Covex

Anmeldungsdatum:
11. November 2013

Beiträge: 9

Du hast übrigens nur einen kleinen fehler gamacht 😀

nextLine

Advances this scanner past the current line and returns the input that was skipped. This method returns the rest of the current line, excluding any line separator at the end. The position is set to the beginning of the next line.

Since this method continues to search through the input looking for a line separator, it may buffer all of the input searching for the line to skip if no line separators are present.

statt:

next

Returns the next token if it matches the specified pattern. This method may block while waiting for input to scan, even if a previous invocation of hasNext(Pattern) returned true. If the match is successful, the scanner advances past the input that matched the pattern.

so funktionierts:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import java.util.Scanner;

public class PhysikTest {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Welchen Physikalischen Wert suchen sie?");
        String Gesucht = input.next();
        if (Gesucht.equals("v")){

            System.out.print("Zeiteinheit: ");
            String Zeiteinheit = input.next();

            System.out.print("Zahlenwert der Zeit: ");
            int Zeit = input.nextInt();
            
            System.out.print("Streckeneinheit: ");
	    String Streckeneinheit = input.next();
        
            System.out.print("Wert der Streckeneinheit: ");
            int Strecke = input.nextInt();
            
            System.out.print(Geschwindigkeit(Strecke,Zeit));
            System.out.println( Streckeneinheit + "/" + Zeiteinheit);   
        }
        else{
            System.out.println("Error");
        }
    }

    public static int Geschwindigkeit(int s, int t) {
        int v = s / t;
        return v;
    }

}

–> echte profis hier im forum

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13219

Covex schrieb:

Du hast übrigens nur einen kleinen fehler gamacht 😀

Worauf beziehst Du Dich da?

–> echte profis hier im forum

Und was meinst Du damit?

Ciao

robert

Covex

Anmeldungsdatum:
11. November 2013

Beiträge: 9

Er hat keinen großen fehler gemacht sondern nur die falsche methode verwendet.

und wenn ich das nicht überlesen habe kam diese antwort nicht sondern nur ein diskusion über die funktionsweise des scanners die ihm überhaupt nichts bringt

Hefeweiz3n Team-Icon

Moderator, Webteam
Avatar von Hefeweiz3n

Anmeldungsdatum:
15. Juli 2006

Beiträge: 5815

Wohnort: Ankh-Morpork

Covex schrieb:

Er hat keinen großen fehler gemacht sondern nur die falsche methode verwendet.

und wenn ich das nicht überlesen habe kam diese antwort nicht

Doch, schon relativ bald auf Seite 1. Zudem kam dann die Frage vom OP warum er dort readLine() verwenden muss.

sondern nur ein diskusion über die funktionsweise des scanners die ihm überhaupt nichts bringt

Ich behaupte doch. Er weiß jetzt nämlich warum er readLine() verwenden musste und wird ähnliche Fehler in Zukunft mit dem Scanner nicht mehr machen. Er hat also verstanden warum sein Code nicht funktioniert hat, nicht nur das sein Code nicht funktioniert hat. Das ist wie in der Schule. Ein Lehrer sagt dir das du etwas falsch gemacht hast. Dann kann er dir entweder sagen wie es richtig gewesen wäre und direkt gehen (Dein Ansatz), oder er kann dir helfen herauszufinden was du falsch gemacht hast damit du es dann richtig neu machen kannst (Was alle anderen bisher gemacht haben). Was meinst Du wo Du mehr gelernt hättest?

Desweiteren bitte ab jetzt keine Diskussion über diese Philosophie des "Hilfe zur Selbsthilfe" geben die hier praktiziert wurde. Wenn du darüber diskutieren möchtest kannst du das in einem neuen Thema tun.

Lysander

Avatar von Lysander

Anmeldungsdatum:
30. Juli 2008

Beiträge: 2669

Wohnort: Hamburg

Hefeweiz3n schrieb:

Desweiteren bitte ab jetzt keine Diskussion über diese Philosophie des "Hilfe zur Selbsthilfe" geben die hier praktiziert wurde.

Man sollte höchstens über die Struktur und die Qualität des gezeigten Codes diskutieren - die ist imho ziemlich schlecht und zeigt mal wieder deutlich die Schwäche von Javas verkorksten Verständnis von OOP, die u.a. zu solchem Code führt.

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13219

Lysander schrieb:

Man sollte höchstens über die Struktur und die Qualität des gezeigten Codes diskutieren - die ist imho ziemlich schlecht und zeigt mal wieder deutlich die Schwäche von Javas verkorksten Verständnis von OOP, die u.a. zu solchem Code führt.

Kannst Du mal erläutern, was Du damit meinst? Vielleicht besser in einem neuen Thread...

Ciao

robert

Covex

Anmeldungsdatum:
11. November 2013

Beiträge: 9

Nimm wenn dann meinen code und nicht den wines totalen anfängers

Antworten |