2016-11-22 3 views
-3

einige Praxis-Prüfungsfragen tun, und es sagt:Wie behebe ich diese nicht kompilierende Methode?

nehmen die Aussage String pattern = getPattern();. Erkläre, ob ein Flow in der Methode getPattern() vorhanden ist. Wie würdest du es reparieren?

Hier ist der Code:

public static String getPattern() { 
    Scanner inPattern = new Scanner(System.in); 
    String pattern = " "; 
    boolean valid = false; 
    int i = 0; 
    while(!valid){ 
    System.out.println("please enter a valid pattern with X or x"); 
    pattern = inPattern.next(); 
if (! (pattern.charAt(i) == 'X' || pattern.charAt(i) == 'x' 
    || pattern.charAt(i) == 'r')) 
    System.out.println("You have entered an invalid pattern"); 
else if ((i + 1) == pattern.length()) valid = true; 
}; 
inPattern.close(); 
return pattern; 
} 

Ich bin nicht wirklich sicher, wie ich dieses Problem beheben würde ... offensichtlich ist dies ein kleiner Teil eines größeren Code, da dies ein Hauptverfahren nicht enthält Es ist persönlich etwas schwieriger zu sehen, was falsch ist.

Ich bin mir wirklich nicht sicher, was ich hier ändern soll. Ich bin seit über 7 Stunden auf YouTube Videos und versuche, dieses Zeug zu verstehen oder diese Frage zu tun, aber ich kann es wirklich nicht herausfinden. Könnte jemand ein gutes Beispiel geben?

+0

"nicht kompilierende Methode?" - Erhalten Sie eine Fehlermeldung? Fügen Sie es Ihrem Beitrag hinzu. – bradimus

+0

** Erkläre, ob ein Fluss in der Methode getPattern() vorhanden ist. Wie würdest du es reparieren? Ist das wirklich die Frage? Es ist Unsinn, da es kein vollständiger Satz ist. Wenn Sie Fragen wie diese stellen, sollten Sie auch Compiler-Fehler veröffentlichen. Sie werden Ihnen sagen, warum es nicht kompiliert. –

+0

"Fluss"? Meinst du "Fehler"? – EJP

Antwort

0

Okey, so erste Dinge zuerst. Der Code, den Sie erhalten haben, ist alles, was Sie brauchen, um es auszuführen, es ist nicht Teil eines "größeren Programms". Es sagt Ihnen, anzunehmen, seine so aufgerufen werden:

String pattern = getPattern(); 

Also, wenn die Methode „getPattern“ von einem Haupt Methode aufrufen, was passiert? Sie werden aufgefordert, ein "gültiges" Zeichen einzugeben. Wenn das Zeichen gültig ist, gibt die Methode das Zeichen zurück.

Die Frage selbst ist seltsam gestaltet. Aber wenn ich mir den Code anschaue, schätze ich, dass sie darum bitten, das Zeichen 'X' oder 'X' einzugeben. Aber im Code ist ein anderes gültiges Zeichen 'r'. Entweder möchten Sie, dass Sie den Text ändern, der dem Benutzer gegeben wurde, oder entfernen Sie "r", da ein gültiges Zeichen meine Annahme wäre.

Verwandte Themen