Array umdrehen

Zel2491

Aktives Mitglied
Moin moin ;)

Ich komm bei einem Algorithmus gerade nicht so richtig weiter...

ich wollte mal meine Fähigkeiten testen und habe mir ein (dachte ich) simples "Problem" ausgesucht:

ich habe eine Funktion mit einem Array
Java:
void namenUmdrehen(){
String[] namensArray = new String[5];
namensArray[0] = "Lieschen Mueller";
namensArray[1] = "Peter Fleissig";
namensArray[2] = "Achim Mustermann";
namensArray[3] = "Anne Mayer";
namensArray[4] = "Peter Pan";

//...

}

, welches ich "umdrehen" möchte. Im Grunde soll am Ende, wenn ich das auf der Konsole ausgebe nicht "Lieschen Mueller" stehen, sondern: "Mueller, Lieschen".

Muss ich jedes einzelne Zeichen überprüfen und wenn eine Leerzeile kommt vertausche ich das? Ich dachte erst, das wird ganz einfach, aber ich stehe im Moment auf'm Schlauch...^^

Jemand eine Idee...? ;-)

Gruß Zel ;-)
 

XHelp

Top Contributor
Muss ich jedes einzelne Zeichen überprüfen und wenn eine Leerzeile kommt vertausche ich das?
was vertauschen?
Trenne doch den jeweiligen String in einzelne Wörter (entweder manuell, oder mit String#split) und setze die so wieder zusammen, wie du es haben möchtest.

P.S. Du hast etwas ungünstig das Thema gewählt, denn genau genommen hat das mit Array rein gar nichts zu tun um vor allem willst du nicht das Array an sich umdrehen.
 

Zel2491

Aktives Mitglied
Stimmt...fällt mir jetzt erst auf... statt Array hätte es String besser getroffen... -.-''

Vielen Dank für deine Hilfe, ich teste es gleich mal aus ;)

Gruß Zel ;)
 
N

nillehammer

Gast
Die Wörter des Strings sind Array Elemente gesplittet an Whitespaces. Du könntest also den String tatsächlich splitten. Im Collections-Framework gibt es die Methode:
Java:
Collections.swap
Die könntest Du benutzen, indem Du den Array in eine List steckst. Aber Du willst es ja selber machen. Dann schau Dir mal den Code dieser Methode an, versuche, ihn nachzuvollziehen und Schau, was davon für Dein Problem passt. Ich denke das hat auch einen großen Lerneffekt/Spaßfaktor.
 

Crian

Top Contributor
Vorsicht, das Erkennen von Namensteilen und dem, was Vorname und Nachname ist, ist alles andere als trivial.

Wenn sicher ist, dass da immer Nur Exakt zwei Worte stehen, deren erstes der Vorname und deren zweites der Nachname ist, ist die Sache einfach. Wenn du aber mit wirklich Namen zu tun hast, wird die Sache ziemlich komplex. Die Freiherren und der Prof. Dr. Dr. hc. blubb. von Sowieso machen sie Sache gern immer wieder haarsträubend schwierig.

Man kann mit Listen bekannter Vor- und Nachnamen arbeiten. Aber auch das hilft immer nur ein Stück weit. Schonmal ein paar asiatische Namen mit in einer Namensliste gehabt?
 

Andi_CH

Top Contributor
Wieso nicht einfach?

Java:
public class StringDrehen {

	void namenUmdrehen(){
		String[] namensArray = new String[5];
		namensArray[0] = "Lieschen Mueller";
		namensArray[1] = "Peter Fleissig";
		namensArray[2] = "Achim Mustermann";
		namensArray[3] = "Anne Mayer";
		namensArray[4] = "Peter Pan";

		for(int i=0; i<namensArray.length; i++) {
			System.out.println("Alt    : " + namensArray[i]);
			int spacePos = namensArray[i].indexOf(' ');
			String part1 = namensArray[i].substring(0, spacePos);
			String part2 = namensArray[i].substring(spacePos+1);
			System.out.println("Teil 1 : " + part1);
			System.out.println("Teil 2 : " + part2);
			String neu = part2 + ", " + part1;
			System.out.println("Neu    : " + neu);
		}
	}

	public static void main(String[] args) {
		(new StringDrehen()).namenUmdrehen();
	}
}

Logisch lässt sich das Innere der Schleife auf einen Einzeiler reduzieren, aber so wird dem TO, welcher offensichtlich ja Anfänger ist, genau gezeigt was passiert.

Logisch lässt sich der Split per
Code:
String.split(...)
machen

Logisch deckt das nicht alle Möglichkeiten ab, aber es erfüllt haarklein die Anforderung welche aus dem Eingangsthread hervorgeht ;-) -> KISS oder besser KIASAP :) (keep it as simple as possible)

Ja, ich weiss, dass es hier Leute gibt, die diese Version komplizierter als einen "banalen" rexexp finden :lol:
 
B

bygones

Gast
sorry Andi_CH, aber das ist nicht wirklich richtig.

KISS bedeutet nicht dass man jeden einzelnen Schritt schreibt und nur "Grundfunktionaltiaeten" nutzt. Ein guter Einzeiler ist meist besser als 10 Zeilen und es erklaert selbst einem Anfaenger was passiert
 

faetzminator

Gesperrter Benutzer
@Crian: Ansonsten gabs immer Gemecker, wir sollen bei Anfängerfragen nicht auf jedes Detail eingehen, und nun ist die Resonanz, dass der Regex nur für triviale Cases funktioniert. Was wollt ihr denn :bae: ? Ich wollte eigentlich nur auf Regex hinweisen, was in diesem Fall (noch) ausgezeichnet läuft :)
 

Crian

Top Contributor
Ich wollte den TE nur warnen. Falls er das nicht nur zu akademischen Zwecken benötigt, stürzt er sich da gerade in eine Löwengrube. *schmunzelt*
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Reihenfolge der Werte umdrehen (mittels statischem int-Array Java Basics - Anfänger-Themen 3
M Array Reihenfolge umdrehen Java Basics - Anfänger-Themen 9
J Array umdrehen Java Basics - Anfänger-Themen 7
T Elemente im Array umdrehen Java Basics - Anfänger-Themen 9
J Array umdrehen Java Basics - Anfänger-Themen 3
S Array bei index halbe umdrehen ohne hilfsfeld Java Basics - Anfänger-Themen 13
A Zeichenkette teilen mit Substring oder Char Array Java Basics - Anfänger-Themen 14
A 6. Element aus einem Array zurückgeben Java Basics - Anfänger-Themen 1
A Was bedeutet bei einem Array "int a [MAX][MAX];", Java Basics - Anfänger-Themen 7
T Array verkleinern Java Basics - Anfänger-Themen 2
J Array aus Numberfield Eingaben Java Basics - Anfänger-Themen 7
D Array List mit Objekten sortieren Java Basics - Anfänger-Themen 2
onlyxlia Anzahl Random Zahlen mit Scanner abfragen und in Array speichern Java Basics - Anfänger-Themen 10
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
Ü Zweidimensionales Array in der ersten Zeile deklarieren Java Basics - Anfänger-Themen 13
Thomas Uppe 2D Array Reihenfolge vermischen Java Basics - Anfänger-Themen 4
T array auslesen Java Basics - Anfänger-Themen 2
Nitrogames Variablen Variable aus JOptionPane Abfrage in Array einfügen Java Basics - Anfänger-Themen 4
moini Auf Array aus Superklasse zugreifen? Java Basics - Anfänger-Themen 2
J ArrayList in 2D-Array konvertieren. Java Basics - Anfänger-Themen 48
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
P Wieso kann ich als Index für einen Array einen Char angeben? Java Basics - Anfänger-Themen 3
Finn_lol Fehlermeldung bei Schleife mit Array Java Basics - Anfänger-Themen 4
Proxy Chars vor array übergabe toLowerUpcase Java Basics - Anfänger-Themen 14
iAmFaiinez Primzahlen Tester ohne Array Java Basics - Anfänger-Themen 4
S array 2 dimensional treppe Java Basics - Anfänger-Themen 3
S Array 2x2 Blöcke mit 0 und 1 Java Basics - Anfänger-Themen 10
C Array von Klassen Java Basics - Anfänger-Themen 2
julian0507 2Dim-Array Spaltensummen Java Basics - Anfänger-Themen 1
XWing Doppelte Zahlen im Array Java Basics - Anfänger-Themen 8
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
Proxy Stack erweitern mit neuem Array falls der alte voll ist!? Java Basics - Anfänger-Themen 5
E Array, nächste Zahl zur 5 ausgeben, wie? Java Basics - Anfänger-Themen 42
J Array.list vergleichen Java Basics - Anfänger-Themen 1
W Java-Code mit Array Java Basics - Anfänger-Themen 14
D Reflections & Generisches Array Java Basics - Anfänger-Themen 4
T Array Java Basics - Anfänger-Themen 2
T Array Java Basics - Anfänger-Themen 15
T Wörteranzahl im Array zählen Java Basics - Anfänger-Themen 9
Ostkreuz Zweidimensionaler Array Index Java Basics - Anfänger-Themen 2
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
R 2d Array individuell machen Java Basics - Anfänger-Themen 4
D 2D Char Array into String Java Basics - Anfänger-Themen 2
J Array Median bestimmen Java Basics - Anfänger-Themen 6
S Array Maximum bestimmen mit for und foreach Java Basics - Anfänger-Themen 7
S Prüfen ob ein zweidimensionales Array rechteckig ist Java Basics - Anfänger-Themen 4
N Array Java Basics - Anfänger-Themen 1
J Array Mittleren Wert bestimmen Java Basics - Anfänger-Themen 2
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
S Inhalte aus Array vergleichen und Max ausgeben Java Basics - Anfänger-Themen 3
M 2d array ohne längen anlegen Java Basics - Anfänger-Themen 4
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
O 2 Dimensionales Array Java Basics - Anfänger-Themen 6
M Bubble Sort - Int[] Array sortieren Java Basics - Anfänger-Themen 2
javaBoon86 Array mehrere Dimensionen Java Basics - Anfänger-Themen 10
B Array nach Elementwerten sortieren? Java Basics - Anfänger-Themen 1
B Explizit Array definieren geht nicht? Java Basics - Anfänger-Themen 14
D Kleinste Zahl in Array finden die vorher noch errechnet werden müssen. Java Basics - Anfänger-Themen 4
L Gegebenes Array sortieren, indem zufällige Zahlenpaare aus Array ausgewählt werden Java Basics - Anfänger-Themen 14
Say 2-DIM Array Code lesen und verstehen Java Basics - Anfänger-Themen 5
N Array beim erstellen mit Werten füllen Java Basics - Anfänger-Themen 6
C Java Array Struktur, welche ist wann besser? Java Basics - Anfänger-Themen 12
Temsky34 Array IndexOf nicht verfügbar Java Basics - Anfänger-Themen 18
belana wie am besten 2D Array von String to Integer Java Basics - Anfänger-Themen 18
S Array mit Methode löschen Java Basics - Anfänger-Themen 2
J Java To String Methode, Array mit For-Schleife Java Basics - Anfänger-Themen 2
E Durch Muster in Array iterieren Java Basics - Anfänger-Themen 3
L Frage zum Array Java Basics - Anfänger-Themen 1
C 2D Array Ausgabe mit for-Schleife i,j Java Basics - Anfänger-Themen 4
D Methode: Array Reihenfolge tauschen Java Basics - Anfänger-Themen 3
julian0507 Array aus Methode in anderer Methode sichtbar machen Java Basics - Anfänger-Themen 10
P Array vom Typ Klasse Java Basics - Anfänger-Themen 18
Lion.King Array deklarieren und initialisieren Java Basics - Anfänger-Themen 5
P Array-Objekte-Aufruf Java Basics - Anfänger-Themen 22
A CSv.Datei einlesen und die werte in zweidemosional Int Array speichern Java Basics - Anfänger-Themen 9
M Methoden Zweidimensionaler Array mit Setter Methode ändern Java Basics - Anfänger-Themen 4
AkiJou Zeile in 2d Array löschen Java Basics - Anfänger-Themen 2
LilliCherry Array in einer Zeile ausgeben Java Basics - Anfänger-Themen 6
A Elemente in einem Array Java Basics - Anfänger-Themen 5
A Vorkommende Farben ermittel und als Array zurückgeben Java Basics - Anfänger-Themen 7
AhmadSlack Array Java Basics - Anfänger-Themen 7
Jambolo Kartenhand Array Java Basics - Anfänger-Themen 14
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
T String Array Fehler beim Index Java Basics - Anfänger-Themen 3
krgewb byte-Array, das ein Bild repräsentiert Java Basics - Anfänger-Themen 1
1 Array rekursiv durchlaufen Java Basics - Anfänger-Themen 8
I Methoden Wieso wird mein Array "a" verändert und meine Variable "a" nicht? Java Basics - Anfänger-Themen 4
EykS 3D Druckdatei basierend auf 3D Array? Java Basics - Anfänger-Themen 3
sserio Array funktioniert nicht Java Basics - Anfänger-Themen 2
sserio Iterierung über ein zweidimensionales Array Java Basics - Anfänger-Themen 16
sserio Zweidimensionales Array [][] wird untereinander ausgegeben Java Basics - Anfänger-Themen 14
Chris.089 2 Werte im Array tauschen Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben