В Groovy, какова возможность передачи строковой структуры параметров в метод.
Я создал метод, как показано ниже.Метод выполняет некоторые конкатенации строк с учетом переданных параметров.Я разработал способ передачи двух параметров для каждой строки.Каковы возможности для передачи более двух параметров.Я хочу, чтобы он был максимально читабельным.
Текущий код с третьими параметрами как глобальный.
createString([
"label1" : 2,
"label2" : 2 + "number",
"label3" : null,
"label4" : "number" + 2
], true)
А остальное:
private String convert(Object val, boolean toUpper) {
(toUpper) ? val.toString().toUpperCase() : val.toString()
}
private String createString(Map<String, Object> params, boolean toUpper) {
def result = "result: ["
params.findAll { it.value != null }.each { result += " " + it.key + "->" + convert(it.value, toUpper) }
result + " ]"
}
Я хочу иметьчто-то, что я могу использовать так:
createString([
"label1" | 2 | true,
"label2" | 2 + "number" | false,
"label3" | null | false,
"label4" | "number" + 2 | true,
], true)