Mal angenommen ich bekomme, von einer mir unbekannten Klasse, einen String übergeben. Ich möchte aber in meiner Klasse die Strings ignorieren die tatsächlich Buchstaben enthalten.
Bsp.:
Eingaben wie "a1235" sind nicht ok
Eingaben wie "100" sind ok
Geht sowas überhaupt?
P.S. auf die mir unbekannte Klasse habe ich keinen Einfluss.
Ich hoffe ich konnte den Sachverhalt passabel umschreiben.
Danke erstmal für die schnellen Antworten, aber irgendwie bin ich gerade Begriffsstutzig. Deshalb poste ich mal den Code der Klasse.
Java:
packagemain.solver;importjava.util.ArrayList;;/**
*
* Klasse IntSolver überprüft die Benutzereingabe mit dem korrekten Ergebnis und
* vergleicht ob sie übereinstimmen und vergibt dementsprechend Punkte. Für
* ganzzahlige Ergebnisse geeignet.
*
*/publicclassIntSolverextendsSolver{privateArrayList<Character> resultArray;privateArrayList<Character> userInputArray;privateArrayList<Boolean> solve;/**
* Konstruktor der Klasse Solver
*/publicIntSolver(){
resultArray =newArrayList<Character>();// ArrayList für die einzelnen// Zeichen des korrekten// Ergebnisses
userInputArray =newArrayList<Character>();// ArrayList für die// einzelnen Zeichen der// Benutzereingabe
solve =newArrayList<Boolean>();}/**
* Methode überprüft 2 Strings und gibt die dafür auszugebenden Punkte
* zurück.
*
* @return points
*/@Overridepublicintsolve(String result,String userInput){setStringToArray(result, userInput);compare(resultArray, userInputArray);int points =getPoints(solve);return points;}/**
* Methode zerlegt Strings in einzelne Arrays.
*
* @param result
* @param userInput
*/privatevoidsetStringToArray(String result,String userInput){for(int i =0; i < resultArray.size(); i++){
resultArray.add(result.charAt(i));
userInputArray.add(userInput.charAt(i));}}/**
* Methode überprüft Stelle für Stelle ob das Ergebnis richtig ist und
* schreibt alles in eine bool ArrayList.
*
* @param resultArray
* - Array des richtigen Ergebnisses
* @param userInputArray
* - Array der Usereingabe
*/privatevoidcompare(ArrayList<Character> resultArray,ArrayList<Character> userInputArray){for(int i =0; i < userInputArray.size(); i++){if(resultArray.get(i).equals(userInputArray.get(i))){
solve.set(i,true);}else{
solve.set(i,false);}}}/**
* Methode rrechnet die zuvergebenden Punkte.
*
* @param solveArray
* @return 1 - Ergebnis richtig
* @return 0 - Ergebnis falsch
*/privateintgetPoints(ArrayList<Boolean> solveArray){int point =0;for(int i =0; i < solveArray.size(); i++){if(solveArray.get(i).equals(true)){
point++;}else{}}if(point == resultArray.size()){return1;}else{return0;}}/**
* Methode soll die UseInputs kicken, die Buchstaben enthalten
* @param userInput
*/privatevoidkickLetters(String userInput){for(int i =0; i < userInputArray.size(); i++){// und wie kann ich hier isLetter genau umsetzten?}}}