2 Strings vergleichen

Laren

Bekanntes Mitglied
Hi,

Ich soll für die Uni unter anderem eine equals methode selbst schreiben, der einfach nur 2 Strings vergleicht.
Dachte zuerst, ist ja leicht und habe
Java:
public boolean equals() {
String wort1 = "Hallo";
String wort2 = "Hallo";
		if (wort1 == wort2)
                return true;
versucht(Achtung nicht auf die Syntax achten, hab das gerade einfach so zum verstehen, so hingeschrieben)
Aber ich bekomme false raus. Wie kann ich 2 Strings ohne equals vergleichen (String1==String2) geht ja nicht;(

Viele Grüße
 

eRaaaa

Top Contributor
Wie kann ich 2 Strings ohne equals vergleichen (String1==String2) geht ja nicht;(

In dem du die equals Methode nachbaust? :)
Vergleiche eben char für char in einer Schleife (vllt. erstmal gucken ob nicht String A doch == String B ist, dann kann man sich den Vergleich nämlich sparen..oder zuerst auch noch die Längen prüfen...)
 

Laren

Bekanntes Mitglied
Hab das jetzt mal so realiesiert.
Jetzt bekomme ich aber eine ArrayIndexOutOfBoundsException, nach nur 3 überprüften Elementen. Ist diese Umsetzung quatsch oder mache ich nur irgentwo einen Fehler?

Java:
public boolean equals(CloneList cl) {
		if (this.size == cl.size) {
			for (int i = 0; i < this.size; i++) {
				char[] e1 = this.get(i).toString().toCharArray();
				char[] e2 = cl.get(i).toString().toCharArray();
				if (e1.length == e2.length) {
					for (int j = 0; j < e1.length; j++) {
						if (e1[i] != e2[i])
							return false;
					}
				}
			}
			return true;
		}

		return false;

	}
 

Cola_Colin

Top Contributor
i und j verwechselt

Du brauchst auch keine Kopie des char Arrays anlegen, die Stringklasse hat Methoden um die Länge zu bestimmen length() und ein char von einem index zu erhalten charAt()
 

Nicer

Bekanntes Mitglied
Ich weiss das Thema ist schon ein paar Tage erledigt aber ich poste das hier trotzdem :

LINK

Hier findet ihr eine Übung zum Thema Strings vergleichen. Verfasst habe diese übrigens ich ;)

Also für alle die Per SuFu hierher kommen -> Oben draufklicken , aufgabe mit lösung vorhanden!
 

Neue Themen


Oben