groovy-lecture/notizen.md

60 lines
1.8 KiB
Markdown
Raw Normal View History

2024-05-16 14:15:12 +02:00
## Ideen für Aufgaben:
- Schere Stein Papier in Groovy, ohne eine Klasse zu benutzen (zuhause)
- Gegebenen Java Code in Groovy umwandeln und dabei den Code so kurz wie möglich halten.
## Besonderheiten in Groovy:
2024-05-16 14:17:13 +02:00
- Gleiche Schlüsselwörter wie in Java, Schlüsselwörter können jedoch auch als Methoden- /Variablennamen verwendet werden
2024-05-16 14:15:12 +02:00
2024-05-16 14:17:55 +02:00
```
public class Hi {
2024-05-16 14:18:40 +02:00
public static void main (String [] args) {
new Hi().this()
2024-05-16 14:17:55 +02:00
}
2024-05-16 14:15:12 +02:00
2024-05-16 14:18:40 +02:00
def "this"() {
print "hello"
2024-05-16 14:15:12 +02:00
}
2024-05-16 14:17:55 +02:00
}
```
2024-05-16 14:42:26 +02:00
Man sollte dies aber vermeiden, da es nur für Verwirrung sorgt und in den meisten Fällen hat man nichts davon.
- Variablennamen dürfen nicht mit Zahlen beginnen, jedoch mit Underscores (\_), Dollarzeichen ($) oder Buchstaben.
- Triple Quoted Strings: Gehen über meherere Zeilen hinweg
```
def a = '''Dies
ist
Ein
riple Quoted String'''
print a
```
2024-05-16 14:57:31 +02:00
Man kann in Strings Platzhalter verwenden und somit Variablenwerte dynamisch in die Strings einfügen (vgl. Ruby #{}). \
Strandardmäßig werden in Groovy Strings aus der Klasse _java.lang.String_ benutzt (also Java Strings). Benutzt man jedoch einen \
Platzhalter im Stringliteral, handelt es sich um einen GString aus der Klasse _groovy.lang.GString_
2024-05-16 14:58:12 +02:00
```
2024-05-16 15:00:26 +02:00
def welt = "World!"
def hallo = "Hello ${welt}"
print hallo // "Hello World!"
2024-05-16 14:57:31 +02:00
```
Es ist auch erlaubt Berechnungen innerhalb des Platzhalters durchzuführen. Auch das wäre also ein gültiger Groovy Code:
2024-05-16 14:58:12 +02:00
2024-05-16 14:57:31 +02:00
```
2024-05-16 15:00:26 +02:00
def str = "2 + 3 ergibt: ${2+3}";
print str // "2 + 3 ergibt: 5
2024-05-16 14:57:31 +02:00
```
2024-05-16 14:58:12 +02:00
2024-05-16 14:57:31 +02:00
Man darf sogar mehrere Statements innerhalb des Platzhalters verwenden, jedoch wird empfohlen dies zu vermeiden.
2024-05-16 14:58:12 +02:00
2024-05-16 14:57:31 +02:00
```
2024-05-16 15:00:26 +02:00
def str = "The sum of 1 and 2 is equal to ${def a = 1; def b = 2; a + b}"
print str // "The sum of 1 and 2 is equal to 3"
2024-05-16 14:57:31 +02:00
```