Groovy
Материал из Викиучебника
Содержание |
[править] Первая программа
Откройте редактор и напишите программу. По традиции, первая программа должна просто выводить приветствие миру:
def name='World'; println "Hello $name!"
Сохраните её в файл helloworld.groovy и запустите. На экране появится надпись:
Hello World!
На этом традиционную часть можно считать выполненной.
[править] Комментарии и демонстрация результата
Комментарием называется часть программного кода, пропускаемая при обработке (интерпретации или компиляции).
В Groovy знаком начала комментария служит //. Всё, что между ним и концом строки пропускается. Пример:
println 2 + 2 // это комментарий println "Привет!" // тоже комментарий
Результат иллюстрируемого кода будет располагаться после последовательности //=>. Пример:
println 2 + 2 //=> 4 println "Привет" //=> Привет
[править] Списки
Groovy содержит встроенную поддержку списков. Списки объявляются путем перечисления элементов в квадратных скобках:
def someList = [1,2,3,4] // Создание списка def emptyList = [] // Создание пустого списка
Обращение к элементам списка осуществляется по индексу, как к массиву в Java:
someList[0] // Обращение к элементу по индексу
Новые элементы могут быть добавлены в список различными способами:
someList[5] = 6 // Добавление элемента в список someList << 7 << 8 // Добавление элементов в конец списка someList += [ 9, 10 ] // "Приклеивание" списка
Теперь, совместное использование списков и ranges:
someList[1..3] // "Срезка" списка - получение подсписка someList[2..4] = [ 12, 13, 14 ] // Изменение подсписка
Также, для индексирования можно использовать и списки:
someList[1,3,5..7,9] // Получение подсписка
Также, Groovy предоставляет встроенный цикл, для перебора элементов списка, или элементов любого объекта, реализующего интерфейс java.lang.Iterable:
for ( e in someList ) { println e // Распечатываем все элементы списка someList }
[править] Maps (Отображения)
Аналогично спискам, Groovy поддерживает прозрачный синтаксис для работы с maps (ассоциативными массивами). Объявление выглядит следующим образом:
def someMap = [ 'a' : 1, 'b' : 2 ] // Объявление
Также, существует специальный синтаксис для объявления пустых отображений:
def emptyMap = [:] // Объявление пустого отображения
Доступ к элементам осуществляется по ключу, с использованием оператора [], или же с ключом как полем:
someMap['a'] // Доступ к элементу someMap.a // Доступ к элементу как к полю
Аналогично производится и изменение элементов:
someMap['a'] = 2 // Изменение элемент someMap.a = 2 // Изменение элемента, как поля