# ArrayList || Bei Ausgabe nach jedem 10. Eintrag Zeilenumbruch



## MoinMoin (11. Sep 2012)

Hallo liebe Community,

ich habe eine Arraylist bei der in jedem Schleifendurchlauf ein Eintrag hinzugefügt wird:


```
public static void gibListe2(String y) {
		list2.add(y);
```

Zum Schluss gibt es ein:


```
JOptionPane.showMessageDialog(null, "Folgende Vorgänge konnten nicht gelöscht werden: " + list2)
```

Nur schreibt er jetzt alle Einträge ( Können auch über 100 werden ) hintereinander. Ich möchte aber gerne, dass er nach 10 Einträgen einen Zeilenumbruch im JOptionPane Bildschirm macht.

Wie kann ich diesen Zeilenumbruch bewirken?

Mit 
	
	
	
	





```
if (list2.size() == 10) {
			list2.add("\n");
```
funktioniert es leider nicht......wär auch zu einfach gewesen!

Liebe Grüße


----------



## ARadauer (11. Sep 2012)

if (list2.size() % 10 == 0) {


----------



## SlaterB (11. Sep 2012)

das geht schon, wenn du an Position 10 insert-est und es kein Problem ist dass Elemente in der Position verschoben sind,
bisschen kompliziert kann es bei mehrfachen Einfügen werden, Schleife nötig, die anderen Einfügungen bedenken usw.

nebenbei:
if (list2.size() == 10) ist natürlich keine Bedingung, die auf eine Liste mit 100 Elementen zutrifft, das dürfte klar sein

@Aradauer
> if (list2.size() % 10 == 0) { 
bei 11 oder 105 Elementen ist ein Zeilenumbruch vielleicht auch erwünscht

-----

ansonsten kannst du auch auf list.toString() verzichten und in einer Schleife selber einen Text zusammenbauen,
da ist es leichter bei bestimmten Indexen ein "\n" einzufügen,
achte gleich darauf, nicht alles String + String zu machen, lieber in einen StringBuilder schreiben


----------



## kaetzacoatl (11. Sep 2012)

```
public ArrayList<String> brechen(ArrayList<String> list){
		ArrayList<String> rtn = new ArrayList<String>();
		for (int i = 0; i < list.size(); i++) {
			rtn.add(list.get(i));
			if(i % 10 == 0)rtn.add("\n");
		}
		return rtn;		
	}
```
Dürfte gehn.


----------



## MoinMoin (11. Sep 2012)

Danke Aradauer !! Kurz, Knackig, Korrekt !! Reicht für meine Bedürfnisse

@ kaetzacoatl: Ist das selbe wie bei Aradauer, deshalb auch vollkommen korrekt !! Danke 

@ SlaterB: Danke auch an dich, hilfst mir bei sogut wie bei jedem Problemchen  !


----------



## Crian (11. Sep 2012)

ARadauer hat gesagt.:


> if (list2.size() % 10 == 0) {



Das funktioniert, wenn man beim Erstellen der Liste auf diese Weise nach jedem 10. einen Umbruch einfügt. Um beim Ausgeben der Liste Umbrüche auszugeben, funktioniert es natürlich nicht.


----------



## SlaterB (11. Sep 2012)

Crian hat gesagt.:


> Das funktioniert, wenn man beim Erstellen der Liste auf diese Weise nach jedem 10. einen Umbruch einfügt. Um beim Ausgeben der Liste Umbrüche auszugeben, funktioniert es natürlich nicht.



gut funktionieren dürfte es aber nicht 
erst 10 Elemente, dann \n als 11., dann 9 Elemente, dann wieder \n und so bleibt es,
besser auf Schleifenvariable wie bei kaetzacoatl


----------



## MoinMoin (11. Sep 2012)

bei mir hats funktioniert ! 



```
public static void gibListe2(String y) {
		list2.add(y);
		if (list2.size() % 10 == 0) { 
			list2.add("\n");
	}
```


Zwar nicht sauber, wie auch Slater B gesehen hat, wie z.B. bei der 11 Stelle, aber es reicht für meine Bedürfnisse! So habe ich wenigstens nicht alles in einer Zeile ! Modulo 4 the Win ! 

--------->          Erledigt


----------

