Startseite
jump to top

Startseite / Vorlagenentwicklung / Vorlagensyntax / Datentypen / List (Listen)

Datentyp ListVerfügbar ab FirstSpirit-Version 4.0

Wertebereich des Datentyps List

In FirstSpirit können Elemente der Vorlagenentwicklung in:

gruppiert werden.

Für die Bearbeitung von Werten, die eine geordnete, indizierte Menge von Listenelemente repräsentieren, stellt FirstSpirit den Datentyp List zur Verfügung. Dieser Datentyp ermöglicht eine Gruppierung von Elementen. Listen sind sehr flexibel und beliebig erweiterbar. Über die Angabe eines Indexwertes, der die Position innerhalb der Liste bestimmt, kann definiert werden, an welcher Position der Liste ein Element eingefügt oder ausgelesen werden soll. Im Gegensatz zum Datentyp Set können Elemente innerhalb einer Liste mehrfach vorkommen.

Der Datentyp List kann auch in der Sun API-Dokumentation nachgeschlagen werden:

java.util.List

Definition

Listen lassen sich auch über [ ] (eckige Klammern) erzeugen. Dabei muss folgende Syntax erfüllt sein:

LISTE := '[]' | [ AUSDRUCK [',' AUSDRUCK ]* ] ']' | '[' AUSDRUCK' .. ' AUSDRUCK ']'

Das folgende Codebeispiel erzeugt eine leere Liste und weist diese der Variablen empty_list zu:

$CMS_SET(empty_list, [])$

Soll eine gefüllte Liste erzeugt werden, also eine Liste, die bereits Elemente enthält, werden die Elemente einfach als kommaseparierte Liste innerhalb der eckigen Klammern übergeben. Das Codebeispiel erzeugt eine neue, gefüllte Liste list:

$CMS_SET(list, [1,2,3])$

Durch die Angabe des Indexes kann die Position bestimmt werden, an der der übergebene Wert eingefügt werden soll. Bereits bestehende Werte werden dabei überschrieben. Codebeispiel:

$CMS_SET(list[0], "4")$

Ausgabe:

[4, 2, 3]

Zugriff auf Elemente der Liste

Der Zugriff auf die Elemente einer Liste erfolgt über den Index der Liste.

Der Index kann durch einen konstanten Wert:

list[2] 

oder über eine Variable definiert werden:

list[i]

analog dazu:

list.get(2)
list.get(i)

Beispiele:

$CMS_VALUE(list.get(2))$ 

oder:

$CMS_SET(i, 2)$
$CMS_VALUE(list, [i])$

Beide Beispiele liefern das dritte Element der Liste zurück (Index beginnt immer mit 0!).

Analog dazu kann ein neues Listenelement über den Index an eine bestimmte Position der Liste gesetzt werden:

$CMS_SET(list[0], "new")$

Die Zeichenkette new wird mit dieser Anweisung an die erste Position der Liste gesetzt.

Es können auch alle Element einer Liste gleichzeitig gesetzt werden. Die Position ist dann abhängig von der Reihenfolge der Elemente innerhalb der Anweisung $CMS_SET(list, [...])$.

$CMS_SET(list, ["a","b","c"])$

Sortieren der Listenelemente

Mit der Methode sort lassen sich Listen aufsteigend sortieren:

$CMS_SET(list, ["C", "E", "B", "D", "A"])$
$CMS_VALUE(list.sort)$

Die Ausgabe lautet:

[A, B, C, D, E]

Die Methode reverse kehrt die Reihenfolge der Listenelemente um:

$CMS_SET(list, ["C", "E", "B", "D", "A"])$
$CMS_VALUE(list.reverse)$

Ausgabe:

[A, D, B, E, C]

Durch Kombination beider Methoden erhält man eine absteigende Sortierung:

$CMS_SET(list, ["C", "E", "B", "D", "A"])$
$CMS_VALUE(list.sort.reverse)$

Ausgabe:

[E, D, C, B, A]

Methoden auf List-Objekten

In der unten angegebenen Tabelle werden alle Methoden aufgelistet, die auf Objekten von Datentyp List aufgerufen werden können:

Objekt wird von folgenden Formular-Objekten erzeugt:
CMS_INPUT_SECTIONLIST
Methodenname Rückgabetyp Kurzbeschreibung Verfügbar seit
add(List) List
add(Object) boolean
add(int, Object) void
addAll(Collection) boolean
addAll(int, Collection) boolean
clear void
contains(Object) boolean
containsAll(Collection) boolean
copy Collection make a (shallow) copy 4.0.0
copyOf(Collection) List
distinct(Lambda) Collection Ausgabe einer Liste eindeutiger Elemente 4.1
equals(Object) boolean
filter(String) Object delivers a filtered collection, the last parameter converted to a lambda expression 4.0.0
filter(Lambda) Object Filterung von Listenelementen 4.0.0
first Object
fold(Lambda, Map) Object Zusammenfassen von Werten 4.0.0
forEach(Consumer) void
get(Range) Object
get(int) Object
getClass Class Klasse des aufrufenden Objektes
indexOf(Object) int
isCase(Object) boolean
isEmpty boolean Prüft, ob ein Ausdruck leer ist
isNull boolean Prüft, ob ein Ausdruck Null ist
iterator Iterator
last Object
lastIndexOf(Object) int
length int
listIterator ListIterator
listIterator(int) ListIterator
map(String) Object delivers a mapped collection, the last parameter converted to a lambda expression 4.0.0
map(Lambda) Object Ausgabe von Listenelementen als Sammlung 4.0.0
max Object delivers the maximum element (only applicable if elements are compareable) 4.0.0
max(Comparator) Object delivers the maximum element concerning to the given comparator 4.0.0
max(Lambda) Object Nach dem höchsten Wert filtern 4.0.0
min Object delivers the minimum element (only applicable if elements are compareable) 4.0.0
min(Comparator) Object delivers the minimum element concerning to the given comparator 4.0.0
min(Lambda) Object Nach dem niedrigsten Wert filtern 4.0.0
of List
of(Object[]) List
of(Object) List
of(Object, Object) List
of(Object, Object, Object) List
of(Object, Object, Object, Object) List
of(Object, Object, Object, Object, Object) List
of(Object, Object, Object, Object, Object, Object) List
of(Object, Object, Object, Object, Object, Object, Object) List
of(Object, Object, Object, Object, Object, Object, Object, Object) List
of(Object, Object, Object, Object, Object, Object, Object, Object, Object) List
of(Object, Object, Object, Object, Object, Object, Object, Object, Object, Object) List
plus(Collection) Collection appends all elements to this collection (called for operator '+') 4.0.0
plus(Object) Collection adds the element to the collection (called for operator '+') 4.0.0
print void
print(Object) void
remove(int) Object
remove(Object) boolean
removeAll(Collection) boolean
removeIf(Predicate) boolean
replaceAll(UnaryOperator) void
retainAll(Collection) boolean
reverse List
set(int, Object) Object
set(String, Object) Object
size int the number of contained elements 4.0.0
sort List
sort(String) List
sort(Comparator) List
sort(Lambda) List Sortierung von Listenelementen
spliterator Spliterator
subList(int) List
subList(int, int) List
sublist(int) List
sublist(int, int) List
toArray Object[]
toArray(Object[]) Object[]
toArray(IntFunction) Object[]
toJSON String Convert to a JSON-compatible string representation including necessary quotes and escaping for immediate use. Handles Maps, Collections, Arrays, Numbers, Strings, Boolean, Date, and JsonElement. A date instance will be converted to an ISO-8601 formatted date string. Any object other than above will be converted using its 'toString()' value. 5.2.11
toList List Converts a collection to a list. 5.2.416
toString String
toString(String) String Ausgabe von durch Trennzeichen separierte Elemente als String 4.0.0
toString(String, String) String Short form for collection.map(attribute).toString(delimiter) 4.0.0
type String

add(List)

Methodenname Rückgabetyp Verfügbar seit
add(List) List

add(Object)

Methodenname Rückgabetyp Verfügbar seit
add(Object) boolean

add(int, Object)

Methodenname Rückgabetyp Verfügbar seit
add(int, Object) void

addAll(Collection)

Methodenname Rückgabetyp Verfügbar seit
addAll(Collection) boolean

addAll(int, Collection)

Methodenname Rückgabetyp Verfügbar seit
addAll(int, Collection) boolean

clear

Methodenname Rückgabetyp Verfügbar seit
clear void

contains(Object)

Methodenname Rückgabetyp Verfügbar seit
contains(Object) boolean

containsAll(Collection)

Methodenname Rückgabetyp Verfügbar seit
containsAll(Collection) boolean

copy

make a (shallow) copy
Methodenname Rückgabetyp Verfügbar seit
copy Collection 4.0.0

copyOf(Collection)

Methodenname Rückgabetyp Verfügbar seit
copyOf(Collection) List

distinct(Lambda)

Über diese Methode können Duplikate einer Liste entsprechend einer Bedingung eliminiert bzw. ignoriert werden. Sie kann z. B. für Glossare oder Übersichten verwendet werden, die dann beispielsweise verlinkt auch als Navigationselement dienen können.

Siehe Seite Abbildungs-Ausdrücke (Lambda).

Methodenname Rückgabetyp Verfügbar seit
distinct(Lambda) Collection 4.1

equals(Object)

Methodenname Rückgabetyp Verfügbar seit
equals(Object) boolean

filter(String)

delivers a filtered collection, the last parameter converted to a lambda expression
Methodenname Rückgabetyp Verfügbar seit
filter(String) Object 4.0.0

filter(Lambda)

Haben Listen mehrere Attribute pro Element (vergleichbar einem Datensatz mit mehreren Spalten), können die Elemente mit der Methode .filter(Lambda) nach den einzelnen Attributen gefiltert werden.

Siehe dazu Seite Abbildungs-Ausdrücke (Lambda).

Methodenname Rückgabetyp Verfügbar seit
filter(Lambda) Object 4.0.0

first

Methodenname Rückgabetyp Verfügbar seit
first Object

fold(Lambda, Map)

Siehe Seite Abbildungs-Ausdrücke (Lambda).

Methodenname Rückgabetyp Verfügbar seit
fold(Lambda, Map) Object 4.0.0

forEach(Consumer)

Methodenname Rückgabetyp Verfügbar seit
forEach(Consumer) void

get(Range)

Methodenname Rückgabetyp Verfügbar seit
get(Range) Object

get(int)

Methodenname Rückgabetyp Verfügbar seit
get(int) Object

getClass

Die Methode .getClass() (in Bean-Syntax: .class) liefert die Klasse des aufrufendes Objektes zurück (vgl. java.lang.Class).

Aufruf:

$CMS_VALUE(myString.class)$
$CMS_VALUE(myString.getClass())$

Ausgabe:

java.lang.String
Methodenname Rückgabetyp Verfügbar seit
getClass Class

indexOf(Object)

Methodenname Rückgabetyp Verfügbar seit
indexOf(Object) int

isCase(Object)

Methodenname Rückgabetyp Verfügbar seit
isCase(Object) boolean

isEmpty

Die Methode .isEmpty() (in Bean-Syntax: .isEmpty) prüft, ob ein Ausdruck bzw. Objekt leer ist, z. B. storeElement.isEmpty(). Das Ergebnis der semantischen Prüfung hängt vom Ausdruck bzw. Objekt ab, z. B. eine Zeichenkette ist dann leer, wenn sie kein Zeichen enthält. Bei Objekten mit komplexen Werten oder Objekten entscheidet das Objekt, wann es leer ist. Der Datentyp DomElement enthält beispielsweise immer ein leeres Dokument, ist also nie null. Die Prüfung einer leeren DOM-Editor-Eingabekomponente mit der Methode .isNull() liefert daher den Wert false, während die Prüfung der Komponente auf .isEmpty() den Wert true liefern würde.

Die Methode .isEmpty() gibt einen booleschen Wert als Ergebnis der Prüfung zurück. true (=wahr) ist die Prüfung, wenn der Ausdruck bzw. das Objekt leer ist und false (=unwahr) wenn nicht.

Methodenname Rückgabetyp Verfügbar seit
isEmpty boolean

isNull

Die Methode .isNull() (in Bean-Syntax: .isNull) prüft, ob ein Ausdruck bzw. Objekt Null ist, z. B. storeElement.isNull(). Bei Objekten mit komplexen Werten oder Objekten entscheidet das Objekt, wann es null ist. Der Datentyp DomElement enthält beispielsweise immer ein leeres Dokument, ist also nie null. Die Prüfung einer leeren DOM-Editor-Eingabekomponente mit der Methode .isNull() liefert daher den Wert false, während die Prüfung der Komponente auf .isEmpty() den Wert true liefern würde.

Die Methode .isNull() gibt einen booleschen Wert als Ergebnis der Prüfung zurück. true (=wahr) ist die Prüfung, wenn der Ausdruck bzw. das Objekt Null ist und false (=unwahr) wenn nicht.

Methodenname Rückgabetyp Verfügbar seit
isNull boolean

iterator

Methodenname Rückgabetyp Verfügbar seit
iterator Iterator

last

Methodenname Rückgabetyp Verfügbar seit
last Object

lastIndexOf(Object)

Methodenname Rückgabetyp Verfügbar seit
lastIndexOf(Object) int

length

Methodenname Rückgabetyp Verfügbar seit
length int

listIterator

Methodenname Rückgabetyp Verfügbar seit
listIterator ListIterator

listIterator(int)

Methodenname Rückgabetyp Verfügbar seit
listIterator(int) ListIterator

map(String)

delivers a mapped collection, the last parameter converted to a lambda expression
Methodenname Rückgabetyp Verfügbar seit
map(String) Object 4.0.0

map(Lambda)

Siehe Seite Abbildungs-Ausdrücke (Lambda).

Methodenname Rückgabetyp Verfügbar seit
map(Lambda) Object 4.0.0

max

delivers the maximum element (only applicable if elements are compareable)
Methodenname Rückgabetyp Verfügbar seit
max Object 4.0.0

max(Comparator)

delivers the maximum element concerning to the given comparator
Methodenname Rückgabetyp Verfügbar seit
max(Comparator) Object 4.0.0

max(Lambda)

Siehe Seite Abbildungs-Ausdrücke (Lambda).

Methodenname Rückgabetyp Verfügbar seit
max(Lambda) Object 4.0.0

min

delivers the minimum element (only applicable if elements are compareable)
Methodenname Rückgabetyp Verfügbar seit
min Object 4.0.0

min(Comparator)

delivers the minimum element concerning to the given comparator
Methodenname Rückgabetyp Verfügbar seit
min(Comparator) Object 4.0.0

min(Lambda)

Siehe Seite Abbildungs-Ausdrücke (Lambda).

Methodenname Rückgabetyp Verfügbar seit
min(Lambda) Object 4.0.0

of

Methodenname Rückgabetyp Verfügbar seit
of List

of(Object[])

Methodenname Rückgabetyp Verfügbar seit
of(Object[]) List

of(Object)

Methodenname Rückgabetyp Verfügbar seit
of(Object) List

of(Object, Object)

Methodenname Rückgabetyp Verfügbar seit
of(Object, Object) List

of(Object, Object, Object)

Methodenname Rückgabetyp Verfügbar seit
of(Object, Object, Object) List

of(Object, Object, Object, Object)

Methodenname Rückgabetyp Verfügbar seit
of(Object, Object, Object, Object) List

of(Object, Object, Object, Object, Object)

Methodenname Rückgabetyp Verfügbar seit
of(Object, Object, Object, Object, Object) List

of(Object, Object, Object, Object, Object, Object)

Methodenname Rückgabetyp Verfügbar seit
of(Object, Object, Object, Object, Object, Object) List

of(Object, Object, Object, Object, Object, Object, Object)

Methodenname Rückgabetyp Verfügbar seit
of(Object, Object, Object, Object, Object, Object, Object) List

of(Object, Object, Object, Object, Object, Object, Object, Object)

Methodenname Rückgabetyp Verfügbar seit
of(Object, Object, Object, Object, Object, Object, Object, Object) List

of(Object, Object, Object, Object, Object, Object, Object, Object, Object)

Methodenname Rückgabetyp Verfügbar seit
of(Object, Object, Object, Object, Object, Object, Object, Object, Object) List

of(Object, Object, Object, Object, Object, Object, Object, Object, Object, Object)

Methodenname Rückgabetyp Verfügbar seit
of(Object, Object, Object, Object, Object, Object, Object, Object, Object, Object) List

plus(Collection)

appends all elements to this collection (called for operator '+')
Methodenname Rückgabetyp Verfügbar seit
plus(Collection) Collection 4.0.0

plus(Object)

adds the element to the collection (called for operator '+')
Methodenname Rückgabetyp Verfügbar seit
plus(Object) Collection 4.0.0

print

Methodenname Rückgabetyp Verfügbar seit
print void

print(Object)

Methodenname Rückgabetyp Verfügbar seit
print(Object) void

remove(int)

Methodenname Rückgabetyp Verfügbar seit
remove(int) Object

remove(Object)

Methodenname Rückgabetyp Verfügbar seit
remove(Object) boolean

removeAll(Collection)

Methodenname Rückgabetyp Verfügbar seit
removeAll(Collection) boolean

removeIf(Predicate)

Methodenname Rückgabetyp Verfügbar seit
removeIf(Predicate) boolean

replaceAll(UnaryOperator)

Methodenname Rückgabetyp Verfügbar seit
replaceAll(UnaryOperator) void

retainAll(Collection)

Methodenname Rückgabetyp Verfügbar seit
retainAll(Collection) boolean

reverse

Methodenname Rückgabetyp Verfügbar seit
reverse List

set(int, Object)

Methodenname Rückgabetyp Verfügbar seit
set(int, Object) Object

set(String, Object)

Methodenname Rückgabetyp Verfügbar seit
set(String, Object) Object

size

the number of contained elements
Methodenname Rückgabetyp Verfügbar seit
size int 4.0.0

sort

Methodenname Rückgabetyp Verfügbar seit
sort List

sort(String)

Methodenname Rückgabetyp Verfügbar seit
sort(String) List

sort(Comparator)

Methodenname Rückgabetyp Verfügbar seit
sort(Comparator) List

sort(Lambda)

Haben Listen mehrere Attribute pro Element (vergleichbar einem Datensatz mit mehreren Spalten), können die Elemente mit der Methode .sort(Lambda) nach den einzelnen Attributen sortiert werden.

Siehe dazu Seite Abbildungs-Ausdrücke (Lambda).

Methodenname Rückgabetyp Verfügbar seit
sort(Lambda) List

spliterator

Methodenname Rückgabetyp Verfügbar seit
spliterator Spliterator

subList(int)

Methodenname Rückgabetyp Verfügbar seit
subList(int) List

subList(int, int)

Methodenname Rückgabetyp Verfügbar seit
subList(int, int) List

sublist(int)

Methodenname Rückgabetyp Verfügbar seit
sublist(int) List

sublist(int, int)

Methodenname Rückgabetyp Verfügbar seit
sublist(int, int) List

toArray

Methodenname Rückgabetyp Verfügbar seit
toArray Object[]

toArray(Object[])

Methodenname Rückgabetyp Verfügbar seit
toArray(Object[]) Object[]

toArray(IntFunction)

Methodenname Rückgabetyp Verfügbar seit
toArray(IntFunction) Object[]

toJSON

Convert to a JSON-compatible string representation including necessary quotes and escaping for immediate use. Handles Maps, Collections, Arrays, Numbers, Strings, Boolean, Date, and JsonElement. A date instance will be converted to an ISO-8601 formatted date string. Any object other than above will be converted using its 'toString()' value.
Methodenname Rückgabetyp Verfügbar seit
toJSON String 5.2.11

toList

Converts a collection to a list.
Methodenname Rückgabetyp Verfügbar seit
toList List 5.2.416

toString

Methodenname Rückgabetyp Verfügbar seit
toString String

toString(String)

Unter der Angabe eines individuell wählbaren Trennzeichens können die einzelnen Elemente, z.B. einer Liste, zu einem String zusammengeführt werden, wobei das Trennzeichen zur Abtrennung der einzelnen Elemente verwendet wird.

Beispiel:

$CMS_SET(myList, ["Haus","Schlüssel","Fenster"])$
$CMS_VALUE(myList.toString("; "))$

Die Elemente der Liste myList werden mit Semikolon und Leerzeichen voneinander getrennt ausgegeben:

Haus; Schlüssel; Fenster
Methodenname Rückgabetyp Verfügbar seit
toString(String) String 4.0.0

toString(String, String)

Short form for collection.map(attribute).toString(delimiter)
Methodenname Rückgabetyp Verfügbar seit
toString(String, String) String 4.0.0

type

Methodenname Rückgabetyp Verfügbar seit
type String

© 2005 - 2020 e-Spirit AG | Alle Rechte vorbehalten. | FirstSpirit 2020-07 | Datenschutz | Impressum | Kontakt