Last active
December 19, 2018 11:59
-
-
Save chuikoaleksandr/0d8d1a0488fdc47e252820dd516bb801 to your computer and use it in GitHub Desktop.
simple groovy base tutorial for https://atlasteam.ru/?p=1834
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Как объявить переменную | |
def a = 5 //целое число | |
def а = -5.4 //отрицательное число с дробной частью | |
def a = 'test' //обычная строка | |
def a = true //логическая переменная true/false | |
def a = null //значение отсутствует | |
//как вернуть/вывести на кран значение | |
return a | |
//Как узнать класс объекта | |
a.class | |
yourObject.class | |
yourObject.getClass() | |
//Как узнать доступные методы в объекте | |
object.class.methods | |
//Работа с числами | |
def a = -7.4 | |
a.abs() //7.4 | |
A as Integer // -7 | |
A.toInteger() // -7 | |
'7' as Integer //число 7 | |
//Как сравнить числа | |
a > b //больше? | |
a <= b //меньше или равно? | |
a == b //равно? | |
a != b //не равно? | |
//арифметичесие действия | |
7 + 5 | |
7 - 5 | |
7 * 5 | |
7 / 5 | |
7 ** 5//Возведение в степень | |
7 % 5//Остаток от деления | |
//Как создать список значений | |
def list = [] | |
//Как создать список уникальных значений | |
def set = [] as Set | |
set = list as Set | |
//Как добавить значение в список | |
list << a | |
list += a | |
list.add(a) | |
//Как убрать значение из списка | |
list-= a | |
list.remove(a) | |
//Как создать список пар ключ:значение (словарь/map) | |
def map = [:] | |
//Как добавить значение в map | |
map << [key: value]//key - строка | |
map << [(key): value]//key - объект | |
//Как получить значение из map по ключу | |
map.key | |
map['key'] | |
//Как удалить ключ из map | |
map.remove(key) | |
//Как узнать размер списка | |
list.size() | |
//Как получить первый элемент списка | |
list.first() | |
//Как получить последний элемент | |
list.last() | |
//Как получить максимальный элемент | |
list.max() | |
//Как получить минимальный элемент | |
list.min() | |
//Как соединить два списка | |
list1 += list2 | |
list += set | |
//Как превратить список списков объектов в список объектов | |
listOfList = [[1,2,3], [4,5,6]] | |
list = listOfList.flatten() | |
list == [1,2,3,4,5,6] | |
//Как найти пересечение двух списков | |
list1.intersect(list2) | |
//Как перевернуть список | |
list.revert() | |
//Как обойти список | |
list.each{ item-> | |
//item - поочередно присватается каждый элемент списка | |
} | |
list.each{ | |
//по умолчания вместо item используется переменная it, ее можно не указывать | |
} | |
//Как обойти map | |
map.each{key, value-> | |
//key, value-> поочередно признаются значения каждой пары | |
} | |
//Как отсортировать список | |
list.sort() | |
listOfmap = [[key:1], [key:3], [key:2]] | |
listOfmap.sort{it.key} == [[key:1], [key:2], [key:3]] | |
//Как найти 1 элемент в списке | |
list = [1,2,3] | |
list.find{ | |
it == 2 | |
} | |
//Как найти все элементы по условию | |
list.findAll{ | |
it >=2 | |
} | |
//Как изменить каждый элемент списка | |
list.collect{ | |
it * 2 | |
} | |
//Как проверить что все элементы удовлетворяют условию | |
list.every{it > 0} | |
//Как проверить, что хотя бы один элемент удовлетворяет условию | |
list.any{it > 0} | |
//Как проверить что список содержит значение | |
list.contains(a) | |
//Как проверить что значение в переменной есть | |
if(a){ | |
//если a == true или a != null или a = не пустое значение([], '') | |
} | |
//Строки | |
'string' //Обычная строка | |
'''st | |
ri | |
n | |
g''' //Обычная многострочная строка | |
"groovy string" //Груви(groovy) строка | |
"""groovy | |
string""" //Многострочная груви строка | |
//В груви строке можно использовать переменные через конструкцию ${} | |
def a = 123 | |
"${a}" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment