Java Aufgabe -> String einlesen, splitten,Substring &

Status
Nicht offen für weitere Antworten.

Jayman

Bekanntes Mitglied
Hallo Jungs,
ich habe Probleme bei einer Aufgabe, und kann, weil WE ist keinen Übungsleiter um Lösungstipps zu folgender Aufgabe bitten:

"Erstellen Sie eine Klasse InputParser, welche eine Eingabe des Benutzers akzeptiert und den eingegebenen
String folgendermaßen verwertet:
1) Der String wird an allen Leerzeichen gesplittet und die einzelnen Worte in Substrings gespeichert.
2) Folgende Kommandos soll der Parser erkennen und erstmal darauf mit einer Ausgabe reagieren:
a. go <DIRECTION>, wobei <DIRECTION> „North“, „East“, „South“ oder „West“ sein kann.
Wird keine Richtung angegeben oder eine, die von den oben genannten abweicht, so wird ein
Fehler ausgegeben. Ansonsten soll die Bestätigung erscheinen, dass man in diese Richtung gegangen
ist.
b. look oder look around
Es wird ausgegeben, dass man sich umschaut, z.B. „You are looking around …“
3) Der Parser soll dabei Groß- wie Kleingeschriebenes gleichermaßen erkennen, also „GO NORTH“ oder
„Go NorTh“ oder ähnliches soll genauso erkannt und behandelt werden wie „go North“"

-> ok, ich arbeite mit JoptionPane für die Eingabe.
Wie gehe ich bei dieser Aufgabe vor?
-ich muss splitten (ist damit trimmen gemeint, also .trim())?
-wozu ist der Substring? (ich meine wozu benutze ich diesen HIER)
-kann ich dann mit .equals arbeiten zum Stringvergleich und der Ausgabe?
-mache ich das in einem try-catch Block? (->gibt es eine Exception, wenn nichts eingegeben wird?)
und das wichtigste:-wie mache ich das mit der unterschiedlichen Groß/Kleinschreibung?

Für Cracks wird dieses alles leicht sein, darum bitte ich mir weiterzuhelfen.
Dankeschön im Vorraus
 

Wildcard

Top Contributor
-ich muss splitten (ist damit trimmen gemeint, also .trim())?
Nein, damit ist split() gemeint.
-wozu ist der Substring? (ich meine wozu benutze ich diesen HIER)
Damit ist wohl einfach gemeint das jedes Wort ein eigener String sein soll (das macht split())
-kann ich dann mit .equals arbeiten zum Stringvergleich und der Ausgabe?
ja
-mache ich das in einem try-catch Block? (->gibt es eine Exception, wenn nichts eingegeben wird?)
hängt davon ab wie du's umsetzen willst.
und das wichtigste:-wie mache ich das mit der unterschiedlichen Groß/Kleinschreibung?
es gibt toLowerCase(), toUpperCase() und equalsIgnoreCase(), du hast also die freie Auswahl
 

Jayman

Bekanntes Mitglied
Danke!
Ich habe dieses erst einmal:

Code:
public class InputParser {

	/**
	 * @param args
	 */
	public static void main(String[] args) {

		
		String s = JOptionPane.showInputDialog( "Willkomen im Labyrinth, bitte geben Sie eine Richtung im Labyrinth an.\n" +
												"Es ist besteht die Möglichkeit nach Norden, Westen, Süden und Osten zu gehen.\n" +
												"Bitte geben Sie die Richtung in englischer Sprache ein, mit voriger Eingabe 'go'.\n" +
												"Als Beispiel, nach Norden zu gehen: go north\n" +
												"Desweiteren können Sie die Eingabe 'look' bzw 'look around' eingeben zum Umschauen.\n" +
												"Bitte geben Sie jetzt ihre auszuübende Funktion ein:" ); 
		
		String s1 = s.toLowerCase();
		
		String[] sSplitted = s1.split( " " );
		
		try{
			if(sSplitted[0].equals("look")){
			
			System.out.println("You are looking around …!");
		}
		
		else if(sSplitted[1].equals("around")){
			System.out.println("You are looking around …!");
		}
		
		else if(sSplitted[1].equals("north")){
			System.out.println("Sie gehen in den Norden!");
		}
		else if(sSplitted[1].equals("east")){
			System.out.println("Sie gehen in den Osten!");
		}
		else if(sSplitted[1].equals("south")){
			System.out.println("Sie gehen in den Sueden!");
		}	
		else if(sSplitted[1].equals("west")){
			System.out.println("Sie gehen in den Westen!");
		}
		}
		
		catch(IllegalArgumentException e){
			System.out.println("Bitte geben Sie ausschliesslich gewuenschte Richtungen ein.");
			System.out.println(e.getMessage());
			/**Exception bei falscher Eingabe und die getMessage Methode*/

		}

	}

}

Aber:
irgendwie bekomme ich das mit der Exception nicht hin, dass er eine Fehlermeldung ausgibt, wenn ich nichts eingebe oder eine nicht-richtige Richtung.
Desweiteren, kann man irgendwie zwei Arrayeinträge sofort vergleichen?
Denn in meinem bislang geschriebenen Programm könnte ich auch 'x North' eingeben & ich erhalte dennoch die Ausgabe 'Sie gehen in den Norden'. Also so etwas wie
sSplitted[0].equals.sSplitted[1].equals("go north") in einer ifSchleife?
 

madboy

Top Contributor
Hi,

sSplitted[0].equals.sSplitted[1].equals("go north") in einer ifSchleife?
geht so nicht, du musst zwei Vergleiche machen:

Code:
if(sSplitted[0].equals("go") && sSplitted[1].equals("north")) {
}

Ausserdem würde ich das ganze nicht mit einer Exception machen sondern mit einem else:

Code:
      else if(sSplitted[1].equals("west")){ 
         System.out.println("Sie gehen in den Westen!"); 
      } else {
            ...
      }

Gruß,
madboy
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H java string aufgabe Java Basics - Anfänger-Themen 10
lrnz22 Java-Basics-Aufgabe Java Basics - Anfänger-Themen 8
M Java Programmierung Aufgabe Anfänger Java Basics - Anfänger-Themen 1
Mikejr Java Berg aufgabe Java Basics - Anfänger-Themen 6
Robert_Klaus Hamster java Simulation Hilfe bei einer Aufgabe Java Basics - Anfänger-Themen 5
TimoN11 Java spezielle Suchprobleme - Aufgabe Java Basics - Anfänger-Themen 5
justemii Gehalt berechnen - Aufgabe Java-Programm Java Basics - Anfänger-Themen 9
M Lösung Aufgabe - Java Programmiren lernen für Dummies Java Basics - Anfänger-Themen 11
A Java-Programmierungs Aufgabe Java Basics - Anfänger-Themen 2
S Unbedingte hilfe bei Java Aufgabe [Schleife / Zinsrechnung] Java Basics - Anfänger-Themen 14
J Hilfe bei Java Aufgabe (Restschuld berechnen) Java Basics - Anfänger-Themen 11
S Hilfe bei Java Aufgabe (Schleifen) Java Basics - Anfänger-Themen 25
J Java Starthilfe Verständnisfrage Aufgabe Java Basics - Anfänger-Themen 2
H java aufgabe Java Basics - Anfänger-Themen 7
H java aufgabe Java Basics - Anfänger-Themen 68
H java aufgabe Java Basics - Anfänger-Themen 25
H aufgabe java luhn algorithmus Java Basics - Anfänger-Themen 10
R Java Aufgabe (Teilbarkeit) Java Basics - Anfänger-Themen 7
H java aufgabe Java Basics - Anfänger-Themen 44
H java aufgabe Java Basics - Anfänger-Themen 7
H java online aufgabe Java Basics - Anfänger-Themen 4
H JAVA AUFGABE Java Basics - Anfänger-Themen 7
P Problem bei Java-Aufgabe Java Basics - Anfänger-Themen 12
J Bradley Kjell java Aufgabe Java Basics - Anfänger-Themen 3
N Java Aufgabe Java Basics - Anfänger-Themen 3
V Verstehe die Lösung einer Aufgabe von Grunkurs-Java nicht. Java Basics - Anfänger-Themen 11
P Verstehe Lösung einer Aufgabe von "Grundkurs-Java" nicht Java Basics - Anfänger-Themen 5
F Java Aufgabe Java Basics - Anfänger-Themen 8
S Hinweis zu Fehler im Kalender-Code - Aufgabe 5.3 aus Grundkurs Programmieren in Java 7. Auflage Java Basics - Anfänger-Themen 4
B Kreuzprodukt zweier Vektoren (Erste Java Aufgabe - Hilfestellungen und Tips erwünscht) Java Basics - Anfänger-Themen 4
M Java Aufgabe Java Basics - Anfänger-Themen 30
M Kurze Verständnisfrage zu einer Java Aufgabe Java Basics - Anfänger-Themen 12
M Problem bei einer Java-Aufgabe (Fakultäten) Java Basics - Anfänger-Themen 5
M Hilfe bei Java-Aufgabe Java Basics - Anfänger-Themen 15
eXistenZ Java-Boon kommt nicht zurrecht mit der Umsetzung einer Aufgabe... Java Basics - Anfänger-Themen 7
D Problem bei Java - Aufgabe Java Basics - Anfänger-Themen 7
J kleine java aufgabe: ausgabe von sternchen Java Basics - Anfänger-Themen 20
G Java Aufgabe nicht lösbar Java Basics - Anfänger-Themen 5
J Java-Arraylist Aufgabe Java Basics - Anfänger-Themen 3
M Java-Anfänger Aufgabe Java Basics - Anfänger-Themen 3
G Problem mit Java Aufgabe Java Basics - Anfänger-Themen 14
D Java Aufgabe fürs Studium (bitte um Hilfe) Java Basics - Anfänger-Themen 8
H .java Dateien in Eclipse einbinden und ausführen Java Basics - Anfänger-Themen 1
onlyxlia Schlüsselworte Was meint man mit "einen Typ" in Java erstellen? Java Basics - Anfänger-Themen 2
O Java Kara geschweifte Klammern Java Basics - Anfänger-Themen 2
richis-fragen Mausrad logitech kann links und rechts klick wie in java abragen. Java Basics - Anfänger-Themen 15
XWing Java Klssenproblem Java Basics - Anfänger-Themen 4
R Umgebungsvariable java -cp gibt immer Java-Hilfe... Java Basics - Anfänger-Themen 3
farbenlos Csv Datei in Java einlesen Java Basics - Anfänger-Themen 18
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
G Java 8 - Support-Ende Java Basics - Anfänger-Themen 7
T Java Weihnachtsbaum + Rahmen Java Basics - Anfänger-Themen 1
N Will mit Java anfangen Java Basics - Anfänger-Themen 13
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
M Java Iterator Verständnisfrage Java Basics - Anfänger-Themen 6
M Java Mail Programm Java Basics - Anfänger-Themen 4
Sniper1000 Java 391 für Windows Java Basics - Anfänger-Themen 37
J Java long- in int-Variable umwandeln Java Basics - Anfänger-Themen 6
JaZuDemNo Java im Studium Java Basics - Anfänger-Themen 7
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
I QR code in Java selber generieren Java Basics - Anfänger-Themen 5
V Java-Ausnahmebehandlung: Behandlung geprüfter Ausnahmen Java Basics - Anfänger-Themen 1
krgewb Java Streams Java Basics - Anfänger-Themen 10
A Überwältigt von der komplexen Java Welt Java Basics - Anfänger-Themen 29
O Mehrfachvererbung auf Spezifikations- und Implementierungsebene in Java. Interfaces Java Basics - Anfänger-Themen 19
John_Sace Homogene Realisierung von Generics in Java ? Java Basics - Anfänger-Themen 19
P Meldung aus Java-Klasse in Thread an aufrufende Klasse Java Basics - Anfänger-Themen 1
R mit Java API arbeiten Java Basics - Anfänger-Themen 9
P JDK installieren Probleme bei der Java-Installation Java Basics - Anfänger-Themen 8
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
Timo12345 JNLP File mit Java öffnen Java Basics - Anfänger-Themen 2
S Video Editierung mit Java.._ Java Basics - Anfänger-Themen 2
F Einstelungen in Java - CursorBlinkRate Java Basics - Anfänger-Themen 10
A PHP $_POST["name"] in Java Java Basics - Anfänger-Themen 3
vivansai21 Is there a oneliner to create a SortedSet filled with one or multiple elements in Java? Java Basics - Anfänger-Themen 9
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
Arjunreddy Can someone please tell me how to use a debugger in BlueJ(a Java environment) Java Basics - Anfänger-Themen 1
M Java assoziationen (UML) Java Basics - Anfänger-Themen 8
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
H Nutzt Eclipse alle CPU-Threads beim Ausführen von Java-Programmen? Java Basics - Anfänger-Themen 4
xXGrowGuruXx Java einstieg, leichte sache 0 verstanden Java Basics - Anfänger-Themen 7
A java.sql.SQLException: Data type mismatch. Java Basics - Anfänger-Themen 1
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
N Java Spiel Figur auf dem Hintergrundbild bewegen. Java Basics - Anfänger-Themen 11
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
N Java Taschenrechner hat Jemand vlt einen Tipp dafür wie ich jetzt die buttons verbinden kann und das Ergebnis auf dem textfield anzeigen lassen kann Java Basics - Anfänger-Themen 13
A Lerngruppe Java Java Basics - Anfänger-Themen 2
G Help me in the Java Program Java Basics - Anfänger-Themen 2
L Java- Vererbung Java Basics - Anfänger-Themen 4
LimDul Suche Java Stream Tutorial Java Basics - Anfänger-Themen 2
_so_far_away_ Ich möchte Java lernen Java Basics - Anfänger-Themen 11
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
V Bild per Java Script austauschen Java Basics - Anfänger-Themen 7
MoxMorris this Keyword in Java Java Basics - Anfänger-Themen 14
D Wie kann man in Java nach Arrays auf Duplikate prüfen Java Basics - Anfänger-Themen 12
wolei JAVA Zeitdifferenz feststellen. Java Basics - Anfänger-Themen 4
DiyarcanZeren Rekursion in Java Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben