Ich verwende Grails. Ich möchte die Werte in Map bedingt setzen. Für ZB:Wie setze ich den Wert in hashmap key: Wertpaar bedingt?
HashMap<String, String> mymap= new HashMap<String, String>();
if (author != null){
mymap['TITLE'] = book.title
}else{
mymap['TITLE'] = 'NA'
}
Also, was ich acheive wollen ist, möchte ich den Wert meines Titels als „book.title“ setzen, wenn der jeweilige Wert ansonsten nicht null ist, sollte es eine normale Zeichenfolge sein " N/A".
Ausgang Ich bin Erste
mymap:[TITLE: NA]
Ausgang Ich möchte
mymap:[TITLE: [TITLE1, TITLE2, NA, TITLE4, TITLE5]]
so etwas wie dieses
Vielen Dank im Voraus.
Brilliant gearbeitet ......! :) Aber gibt es eine Möglichkeit, dass ich die Null-Werte in meiner Liste vermeiden könnte? Für zB bekomme ich diese Ausgabe: [title1, title2, NA, null, NA, null] Wie kann ich 'Null' durch 'NA' ersetzen? –
klingt, als ob diese Nullen keine Nullen sein könnten, wie in echten groovigen Nullen, da 'titles << (title?: 'NA') genau das tut, also vielleicht durch 'if (! Title || title! =' Null ') {titles << title} 'Ich habe das Gefühl, dass diese Nullen keine echten Nullen sind. – Vahid
' each' ist für Nebeneffekte. Verwenden Sie stattdessen 'collect'. – cfrick