vergleich die Länge von einem String mit anderem String

Xching

Erfahrenes Mitglied
Hallo, ich habe ein problem. ich schreibe gerade ein Methode, in dem Methode soll alle Namen zählen, die mit dem angegebenen Zeichen beginn an und ich hab Problem und ich weiß es nicht, wo Fehler lag, kann jemand mir weiter helfen.

Java:
public int countNamesStartingWith(String prefix) {

		String Name;
		int anzahl = 0;
	//	boolean a = true;

		for (int i = 0; i < stellen; i++) {

			Person p = new Person();
			p = personen[i];
			Name = p.getName();
			
			if(pruefString(Name, prefix)){
				anzahl++;
			}

		}
		return anzahl;
	}
	
	public boolean pruefString(String Name, String prefix){
		boolean vergleich = true;
		
		if(Name.startsWith(prefix)!= true){
			return false;
		}
		if(Name.length()!= prefix.length()){
			return false;
		}
		return vergleich;
	}

das ist die Testklasse
Java:
 @Test
  public void testCountNamesStartingWith() throws IOException{
    PhoneBook book = new PhoneBook(FILENAME_S);
    assertNotNull(book);
    int count  = book.countNamesStartingWith("Mayer");
    assertEquals("Die Länge des Ergebnisses ist falsch", 2, count);
  }
 
Zuletzt bearbeitet:
Hi,

tut mir leid, aber deine Frage verstehe ich nicht. Kannst du die bitte noch mal in einem klaren Deutsch formulieren.

ps.: Ohne deine Frage zu kennen, würde ich sagen, da deine Methode den Anfang eines Strings auf Übereinstimmung überprüfen soll, solltest du in der If-Bedingung nicht abfragen, ob der "name" die gleiche Länge hat wie der "prefix". Das wäre dann eher die Methode "equals" und nicht "startsWith".

Gruß

Fabio
 
Entschuldigung, dass ich nicht richtig in Deutsch formuliert habe. ich möchte gern vergleichen, ob die Anzahle von Name mit der Anzahle von Prefix gleich sind, der den angegebenen Zeichen beginnen. wenn ja dann soll Anzahl von Namen, die mit Prefix übereinstimmen zuückliefern.
 
Zurück