4. James
Strachan
29
Aug
2003
Groovy
–
the
birth
of
new
dynamic
language
for
Java
PlaOorm
h0p://radio-‐weblogs.com/0112098/2003/08/29.html
July
2009
“I
can
honestly
say
if
someone
had
shown
me
the
Programming
in
Scala
book
back
in
2003
I’d
probably
never
created
Groovy”
14. import java.util.List;!
import java.util.ArrayList;!
class Erase {!
private List removeLongerThan(List strings, int length) {!
List result = new ArrayList();!
Java
==
Groovy
for (String s: strings) {!
if (s.length() <= length) {!
result.add(s);!
}!
}!
return result;!
}!
!
public static void main(String[] args) {!
List names = new ArrayList();!
names.add("Вася"); names.add("Коля");!
names.add("Петя"); names.add("Фёдор");!
System.out.println(names);!
Erase e = new Erase();!
List shortNames = e.removeLongerThan(names, 4);!
System.out.println(shortNames.size());!
for (String s: shortNames) {!
System.out.println(s);!
}!
}!
}!
15. import java.util.List;!
import java.util.ArrayList;!
class Erase {!
private List removeLongerThan(List strings, int length) {!
List result = new ArrayList();!
for (String s: strings) {!
if (s.length() <= length) {!
result.add(s);!
}!
}! Импорты
по-‐умолчанию
return result;!
}! ;
необязателен
!
public static void main(String[] args) {!
List names = new ArrayList();!
names.add("Вася"); names.add("Коля");!
names.add("Петя"); names.add("Фёдор"); !
System.out.println(names);!
Erase e = new Erase();!
List shortNames = e.removeLongerThan(names, 4); !
System.out.println(shortNames.size());!
for (String s: shortNames) {!
System.out.println(s);!
}!
}!
}!
16. class Erase {!
private List removeLongerThan(List strings, int length) {!
List result = new ArrayList()!
for (String s: strings) {!
if (s.length() <= length) {!
result.add(s)!
}!
}!
return result!
}!
!
public static void main(String[] args) {!
List names = new ArrayList()!
names.add("Вася") names.add("Коля") !
names.add("Петя") names.add("Фёдор") !
System.out.println(names)!
Erase e = new Erase()!
List shortNames = e.removeLongerThan(names, 4) !
System.out.println(shortNames.size())!
for (String s: shortNames) {!
System.out.println(s)!
}!
}!
}!
17. class Erase {!
private List removeLongerThan(List strings, int length) {!
List result = new ArrayList()!
for (String s: strings) {!
if (s.length() <= length) {!
result.add(s)!
}! Динамическая
типизация
}!
return result!
Не
надо
определять
класс
и
main()
!
}! length
и
size
public static void main(String[] args) {!
List names = new ArrayList()!
names.add("Вася") names.add("Коля") !
names.add("Петя") names.add("Фёдор") !
System.out.println(names)!
Erase e = new Erase()!
List shortNames = e.removeLongerThan(names, 4)!
System.out.println(shortNames.size())!
for (String s: shortNames) {!
System.out.println(s)!
}!
}!
}!
18. def removeLongerThan(strings, length) {!
def result = new ArrayList()!
for (s in strings) {!
if (s.size() <= length) {!
result.add(s)!
}!
}!
return result!
}!
!
names = new ArrayList()!
names.add("Вася") !
names.add("Коля") !
names.add("Петя") !
names.add("Фёдор") !
System.out.println(names)!
shortNames = e.removeLongerThan(names, 4)!
System.out.println(shortNames.size())!
for (s: shortNames) {!
System.out.println(s)!
}!
19. def removeLongerThan(strings, length) {!
def result = new ArrayList()!
for (s in strings) {!
if (s.size() <= length) {!
result.add(s)!
}!
}! Нотация
для
списков
return result!
}! Упрощённая
работа
со
списками
!
names = new ArrayList()! return
необязателен
names.add("Вася") !
names.add("Коля") !
names.add("Петя")!
names.add("Фёдор")!
System.out.println(names)!
shortNames = e.removeLongerThan(names, 4)!
System.out.println(shortNames.size())!
for (s: shortNames) {!
System.out.println(s)!
}!