Манипулирование строками — распространенная задача в программировании, и Groovy предоставляет множество методов, позволяющих сделать ее проще и эффективнее. В этой статье мы рассмотрим несколько методов создания простых шаблонов строк в Groovy, а также примеры кода. Эти методы позволяют динамически генерировать строки путем подстановки значений в предопределенные шаблоны, что делает ваш код более читабельным и удобным в сопровождении.
- Интерполяция строк в Groovy:
Groovy поддерживает интерполяцию строк, которая позволяет встраивать выражения в строки, заключенные в двойные кавычки. Выражения будут вычислены, и результаты будут встроены в строку. Вот пример:
def name = "John"
def age = 30
def message = "My name is $name and I am $age years old."
println message
Выход:
My name is John and I am 30 years old.
- Groovy GString:
Помимо интерполяции строк Groovy предоставляет класс GString, который позволяет создавать более сложные шаблоны строк. GStrings создаются путем заключения строки в двойные кавычки, которым предшествует знак доллара. Вот пример:
def name = "John"
def age = 30
def message = "My name is ${name.toUpperCase()} and I am ${age * 2} years old."
println message
Выход:
My name is JOHN and I am 60 years old.
- Шаблоны Groovy:
Groovy также предлагает механизмы шаблонов, такие как GroovyMarkup и Groovy Templates. Эти механизмы позволяют определять шаблоны с заполнителями, а затем заполнять их значениями. Вот пример использования шаблонов Groovy:
@Grab('org.codehaus.groovy:groovy-templates:3.0.7')
import groovy.text.SimpleTemplateEngine
def engine = new SimpleTemplateEngine()
def template = engine.createTemplate("My name is \${name} and I am \${age} years old.")
def binding = [name: "John", age: 30]
def message = template.make(binding).toString()
println message
Выход:
My name is John and I am 30 years old.
- Объединение строк.
Если вы предпочитаете более традиционный подход, вы можете объединить строки с помощью оператора+
или методаconcat()
. Вот пример:
def name = "John"
def age = 30
def message = "My name is " + name + " and I am " + age + " years old."
println message
Выход:
My name is John and I am 30 years old.
Groovy предоставляет различные методы для простых шаблонов строк, включая интерполяцию строк, GStrings, механизмы шаблонов и конкатенацию строк. Эти методы обеспечивают гибкость и удобочитаемость, позволяя легко динамически генерировать строки. Используя эти методы, вы можете расширить возможности манипулирования строками в Groovy.