Quelle est la meilleure façon (idiomatique) de concaténer des chaînes de caractères dans Groovy ?
Option 1 :
calculateAccountNumber(bank, branch, checkDigit, account) {
bank + branch + checkDigit + account
}
Option 2 :
calculateAccountNumber(bank, branch, checkDigit, account) {
"$bank$branch$checkDigit$account"
}
J'ai trouvé un point intéressant sur ce sujet dans l'ancien site web de Groovy : Les choses que vous pouvez faire mais qu'il vaut mieux ne pas faire.
Comme en Java, vous pouvez concaténer des chaînes de caractères avec le symbole "+". Mais Java n'a besoin que de l'un des deux éléments d'une expression "+" pour être un String, peu importe que ce soit au début ou à la fin. Java utilisera la méthode toString() dans l'objet non-String de votre expression "+". de votre expression "+". Mais dans Groovy, vous devez juste être sûr que le premier élément de votre expression "+" implémente la méthode plus() de la bonne manière, parce que Groovy va la rechercher et l'utiliser. Dans le GDK de Groovy, seul le nombre et String/StringBuffer/Character possèdent la méthode plus() implémentée pour concaténer des chaînes de caractères. Pour éviter les surprises, utilisez toujours GStrings.