////////////////////// // // // Class Beispiel // // // ////////////////////// /* class TestDriver { static void main(String[] args) { } } */ /////////////////////////////////// // // // WAS KANN WEGGELASSEN WERDEN // // // /////////////////////////////////// /* Das ; am Ende ist optional */ println("Hello world"); println("ohne ; am Ende") println("\n") /* Zeilenumbruch */ x1 = 1 \ +2 println("Zeilenumbruch: " + x1) println("\n") /* Parenthese optional bei Methodenaufrufen */ println "print ohne klammern" //falsch: println (2+4+6) /3 //richtig: println ((2+4+6) /3) println("\n") /* Return am Ende einer Methode */ int addieren (int a, int b) { a+b } //returnt autom. letzten Befehl (ACHTUNG bei void zb. println()) println "return: " + addieren(3, 4) println("\n") /* Neue Schlüsselwörter: in */ String x2 = 'B' if (x2 in ['A', 'B', 'C', 'D']) { println x2 + " ist in Array enthalten." } else { println x2 + "ist in Array NICHT enthalten." } println("\n") /* Neue Schlüsselwörter: as */ stringArray = ['A', 'B', 'C', 'D'] as String[] //Beispiel unvollständig... //------------------------------------------------------------------------------ /////////////////////////// // // // NEUE SPRACHELEMENTE // // // /////////////////////////// /* Neue Schlüsselwörter: in */ String x3 = 'B' if (x3 in ['A', 'B', 'C', 'D']) { println x3 + " ist IN Array enthalten." } else { println x3 + "ist IN Array nicht enthalten." } println ("\n") /* Neue Schlüsselwörter: as */ stringArr = [1, 2, 3, 4] as int[] //int Array println "AS: " + stringArr[2] as String //String Ausgabe println ("\n") /* Listen */ //java.util.ArrayList newList = ['alpha', 'beta', 'gamma', 'delta'] emptyList = [] println "List: " + newList[1] println "List Range: " + newList[1..3] println ("\n") /* Maps */ newMap = ['alpha':'a', 'beta':'b', 'gamma':'c', 'delta':'d'] emptyMap = [:] println "Map: " + newMap['beta'] println "Map: " + newMap.beta //funktioniert auch println ("\n") /* Regular Expressions */ muster = ~/[A-Za-z]*/ //neues Pattern-Objekt //Muster-Vergleichsoperator: ==~ wort = "test2" if(wort ==~ muster) { println "RegEx: \"" + wort + "\" besteht nur aus Buchstaben." } else { println "RegEx: \"" + wort + "\" besteht nicht nur aus Buchstaben." } println ("\n") /* Closures */ //Programmcode in ein Object verpacken c1 = { X -> println x } c2 = { println it } //Beispiel unvollständig /* Wertebereiche (Ranges) */ intervall1 = 1..5 //inklusiv 5 intervall2 = 1..<5 //exklusiv 5 println "Wertebereich: " println intervall1 println intervall2 println ("\n") //------------------------------------------------------------------------------ //////////////////////////////////////// // // // SPRACHLICHE UNTERSCHIEDE ZU JAVA // // // //////////////////////////////////////// /* Dynamische Typisierung part1 */ println "Dynamische Typisierung part1:" //"def" ist (warscheinlich) optional def v = "Ein Text" // v ist ein String println v.toUpperCase() v = 125 // v ist ein integer println v.doubleValue() // v ist ein double println "\n" /* Dynamische Typisierung part2 */ println "Dynamische Typisierung part2: " def addiere (a, b) { a+b } println addiere ("Hello ", "World") println addiere (100, 0.1) println addiere (new Date(), 1) //------------------------------------------------------------------------------
We use cookies to provide and improve our services. By using our site, you consent to our Cookies Policy. Accept Learn more