Содержание
Hello, Groovy
Предыдущая часть — Groovy: часть 1 – установка на Linux.
Самый простой способо выполнить «Hello, World» — используя Groovy shell:
$ groovysh Groovy Shell (2.4.7, JVM: 1.8.0_51) Type ':help' or ':h' for help. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ groovy:000>
И выполнить println('Hello World'):
groovy:000> println('Hello World');
Hello World
===> null
Либо — в виде скрипта:
#!/usr/bin/env groovy
class Example {
static void main(String[] args) {
// Using a simple println statement to print output to the console
println('Hello World');
}
}
Проверяем:
$ chmod +x hello.groovy $ ./hello.groovy Hello World
Оператор Import
Оператор import используется (внезапно) для импорта библиотек для использования в вашем коде.
В примере ниже — выполняется импорт класса MarkupBuilder:
import groovy.xml.MarkupBuilder def xml = new MarkupBuilder()
По умолчанию — Groovy выполняет импорт следющих библиотек:
import java.lang.* import java.util.* import java.io.* import java.net.* import groovy.lang.* import groovy.util.* import java.math.BigInteger import java.math.BigDecimal
Токены
Токеном (token) может являться ключевое слово, идентификатор, константа, строковый литерал или просто символ.
Например, в коде:
println("Hello World");
Имеется два токена — ключевое слово println и строковый литерал Hello World.
Комментарии в Groovy
В Groovy имеются как однострочные так и многострочные комментарии.
Однострочный комментарий начинается с символов // и могжет быть помещен в любом месте кода:
class Example {
static void main(String[] args) {
// Using a simple println statement to print output to the console
println('Hello World');
}
}
Многострочные комментарии начинаются с /*, и заканчиваются */:
class Example {
static void main(String[] args) {
/* This program is the first program
This program shows how to display hello world */
println('Hello World');
}
}
Точка с запятой
В оригинале говорится «[…] it is required to have semicolons […] Groovy» — на самом деле их не обязательно использовать каждый раз.
Может — в более старых версиях Groovy они требовались? http://groovy-lang.org/semantics.html: «In Groovy semicolons at the end of the line can be omitted, if the line contains only a single statement.»
Пример кода с использованием точки с запятой:
class Example {
static void main(String[] args) {
println('Hello World');
}
}
И без:
class Example {
static void main(String[] args) {
println('Hello World')
}
}
Оба примера будут работать одинаково:
$ ./semicolon.groovy Hello World
Однако при использовании нескольких операторов в одной строке — их необходимо разделять:
class Example {
static void main(String[] args) {
println('Hello World'); assert true
}
}
Иначе — возникнет ошибка:
class Example {
static void main(String[] args) {
println('Hello World') assert true
}
}
$ ./class.groovy
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
/home/setevoy/Scripts/Groovy/class.groovy: 5: expecting '}', found 'assert' @ line 5, column 30.
println('Hello World') assert true
^
Идентификаторы
Идентификаторы (identifiers) используются для определения пользовательских переменных, фукнций и других объектов. Имя идентификатора может начинаться с буквы, знака $ или знака подёркивания _, например:
def employeename def student1 def student_name
def тут — ключевое слово, используемое в Groovy для определения идентификатора.
Пример использования идентификатора в нашей Hello, World программе:
class Example {
static void main(String[] args) {
def x = 5;
println('Hello World: ' + x);
}
}
Результат:
$ ./example.groovy Hello World: 5
Ключевые слова
Ключевые слова — это специальные слова, зарезирвированные в Groovy для самого языка:
| as | assert | break | case |
| catch | class | const | continue |
| def | default | do | else |
| enum | extends | false | Finally |
| for | goto | if | implements |
| import | in | instanceof | interface |
| new | pull | package | return |
| super | switch | this | throw |
| throws | trait | true | try |
| while |
Пробелы
Пробелы в Groovy отделяют одну часть выражения от другой, позволяя компилятору различать отдельные элементы выражения.
В следующем примере — переменные отделяют ключевое слово def от переменной x:
def x = 5;
Литералы
Литерал — обозначение для представления фиксированного значения в Groovy.
В Groovy имеются целочисленные (integer), символьные и строковые литералы, например:
12 1.45 ‘a’ “aa”
Продолжение — Groovy: часть 3 – типы данных.





18 310 views