Array von Strings

  • Themenstarter Themenstarter User474
  • Beginndatum Beginndatum
U

User474

Gast
Hallo Zusammen,

seit einiger Zeit befasse ich mich jetzt mit Java und such mir hier im Forum auch immer Antworten zu meinen Problemen, sofern ich nicht weiter komme. Aber zur Zeit kann ich keine Lösung finden.

Ich möchte eine Methode schreiben die ein Array von Strings entgegennimmt und einen String zurückgibt, indem alle Strings aneinandergeklebt werden, quasi "Hallo" "du" soll zu "Hallodu" werden.
Diese Methode möchte ich dann in der Main-Methode testen.

Die Aufgabe erscheint vielleicht etwas komsich, aber ich versuch mich an nem Tutorial zu orierntieren, aber ich komm an dieser Frage nicht vorbei, weil mir schon der Ansatz fehlt.

Vielen Dank für die Hilfe
Viele Grüße
 
Das Array mit einer Schleife durchlaufen die einzelnen Strings auslesen und zu dem Rückgabestring hinzufügen. Wo liegt denn genau dein Problem?
 
Das Problem besteht darin, dass mir unklar ist wie ich das darstellen soll.

Dachte an sowas,

public static string Stringzusammenführen (string s) {

hier fehlt mir die Idee.

}
 
So sollte man das im richtigen Leben lösen:
Java:
public static String mergeStrings(String ... strings) {
  StringBuilder sb = new StringBuilder(); 
  for(String s  : strings) {
     sb.append(s); 
  }
  return sb.toString();
}

Ineffizienter (wegen der Objekterzeugungen), aber einfacher zu verstehen:
Java:
public static String mergeStrings(String ... strings) {
  String result = "";
  for(String s  : strings) {
     result += s; 
  }
  return result;
}
 
Zuletzt bearbeitet:
Schleifen sind mir ein Begriff. Denk damit kann ich schon relativ umgehen.

Werde mich mal an dem Orientieren was Landei gepostet hat. Evtl. komm ich damit weiter.
 
Hallo nochmal,

leider funktioniert es immer noch nicht so ganz wie ich will. Habe jetzt folgenden Code geschrieben. Das Programm soll mir die einzelnen Strings aneinander hängen, allerdings erhalten ich als Ausgabe [Ljava.lang.String;@2d791620[Ljava.lang.String;@2d791620[Ljava.lang.String;@2d791620 anstatt meinem gewünschten Ergebnis diesisteinTest.

Woran kann das denn liegen? Wo genau haben ich ein Fehler gemacht?

Vielen Dank

Java:
public class Strings {
	/*
	 * 
	 */
 public static String stringappend (String[] str) {
	 String result = "";
		 for(int i = 1; i < str.length; i++ ) {
		 result += str;
	 }
	 return result;
	 
 }
 /** Die Main-Methode */
 public static void main (String [] args){
	String[] test = new String [] {
			"dies", "ist", "ein", "Test"
	};
	 System.out.println(stringappend(test));
	 
	 
 }
}
 
Java:
result += str; // falsch
result += str[i]; // richtig

Außerdem solltest du mit der Schleife bei 0 anfangen, nicht bei 1.
 
Du hast das Array hinzugefügt statt dem darin enthaltenen String

Java:
public static String stringappend (String[] str) {
     String result = "";
         for(int i = 0; i < str.length; i++ ) {
            result += str[i];
     }
     return result;
    
 }

Außerdem sollte die for schleife bei 0 anfangen, sonst fehlt das erste Wort.


--
Mist schon wieder zu spät.
 

Neue Themen


Zurück
Oben