Seite 1 von 1

Task 1 (ii): assembleNumbers()

Verfasst: 29. Apr 2015 21:34
von KaiW
Guten Abend,

ich finde leider keinen Ansatz wie ich den Inhalt (des data-fields) von zwei oder mehr MathElementen zu einem MathElement zusammenfüge ohne ein neues Element zu erstellen.
z.B: aus dem Ausdruck (1|2|3) -> (123)
Wenn ich den Inhalt des 2. oder des 3. Elementes auf das 1. zeigen lasse, geht dieser Inhalt dann nicht verloren?
:roll:

Re: Task 1 (ii): assembleNumbers()

Verfasst: 29. Apr 2015 22:09
von hololol2
Relativ einfach: .setData(data1+data2+data3)
Dann einfach mit .setNext() den Nachfolger anpassen

Re: Task 1 (ii): assembleNumbers()

Verfasst: 30. Apr 2015 18:53
von h_ar
EDIT: Falsche Aufgabe, sorry.

Re: Task 1 (ii): assembleNumbers()

Verfasst: 3. Mai 2015 18:19
von LukasP
hololol2 hat geschrieben:Relativ einfach: .setData(data1+data2+data3)
Dann einfach mit .setNext() den Nachfolger anpassen
oder einfach StringBuilder benutzen und dann builder.append("String")

Re: Task 1 (ii): assembleNumbers()

Verfasst: 3. Mai 2015 21:48
von felicis
Ich würde das bei drei Elementen vielleicht eher nicht machen: das bläht den Code ja nur unnötig auf!

Code: Alles auswählen

setData(string1 + string2 + string3);
ist meiner Ansicht nach (da nur drei Elemente) doch schöner als

Code: Alles auswählen

StringBuilder sb = new StringBuilder();
setData(bs.append(string1).append(string2).append(string3).toString());
Und ich glaube das ist nicht einmal besonders weniger effizient...

felicis

Re: Task 1 (ii): assembleNumbers()

Verfasst: 3. Mai 2015 22:16
von KaeferZuechter
felicis hat geschrieben:Ich würde das bei drei Elementen vielleicht eher nicht machen: das bläht den Code ja nur unnötig auf!

Code: Alles auswählen

setData(string1 + string2 + string3);
ist meiner Ansicht nach (da nur drei Elemente) doch schöner als

Code: Alles auswählen

StringBuilder sb = new StringBuilder();
setData(bs.append(string1).append(string2).append(string3).toString());
Und ich glaube das ist nicht einmal besonders weniger effizient...

felicis
a + b + c ist typischerweise wohl äquivalent zu new StringBuilder().append(a).append(b).append(c).toString().
Bei wenigen String sollte das direkte a.concat(b).concat(c) effizienter sein.

Re: Task 1 (ii): assembleNumbers()

Verfasst: 3. Mai 2015 22:24
von felicis
ok, stimmt... da hast du recht ;)

felicis