Ich habe eine Mehrfachauswahl an Variable-Posting zum Controller. Die Funktionsweise von Mehrfachauswahl funktioniert so, dass sie als einzelne Zeichenfolge übergeben wird, wenn nur ein Wert ausgewählt wurde, und als Zeichenfolge [], wenn mehrere Werte ausgewählt sind. Ich möchte die Verarbeitung einfach halten und die übergebenen Werte gleich behandeln. So ist die beste Art und Weise kann ich mit ist es zu konvertieren, wie so zur Liste:String oder String [] in Liste mit Groovy konvertieren
def selectedValues = params.selectedValues
List valuelist = new ArrayList()
if(selectedValues instanceof String) {
valuelist.add(selectedValues)
} else {
valuelist = selectedValues as List
}
Es funktioniert, aber ich bin neugierig, ob es ein grooviger Weg, dies zu tun, vielleicht mit einem Motto :).
Natürlich, wenn ich einfach tun:
List valuelist = selectedValues as List
Es wird nicht für einen einzelnen ausgewählten Wert arbeiten, wie es sagt umwandeln läßt es von 24 bis [2,4]
Irgendwelche Ideen?
Vielen Dank, ich mag die Lösung mit flatten() – Micor
kürzer als .findAll {it! = Null} ist nur '- null', die alle Null-Einträge aus dem Array entfernt werden. – mmigdol
Vielen Dank, es ist eine sehr schöne Lösung !! : D –