| 

.NET C# Java Javascript Exception

Groovy ist nicht Java-kompatibel!

Dies ist das Archiv des ehemaligen Forums zum Thema Groovy, Grails, Griffon und Bean Scripting Framework, welches unter groovy-forum.de existierte. Die neue Adresse des Groovy-Forums ist: http://codekicker.de/fragen/themen/groovy.


Groovy ist nicht Java-kompatibel!

slyfox1972 - 21.12.2010 16:26
Abgesehen davon, dass es in Groovy keine do-while-Schleifen gibt, ist mir heute eine böse Stolperfalle in Groovy aufgefallen:

In einem Java-Code, der Ostern zu einem Jahr berechnet, war diese Zeile drin:

public static GregorianCalendar eastern(int year) {
    ...
    int n = year - 19 * (year/19);
    ...
}

(Der Autor hätte auch einfach "year % 19" verwenden können, das kannte er wohl nicht).

In Java jedenfalls, kommt immer dasselbe wie bei "year % 19" heraus (zumindest bei Zahlen >= 0), in Groovy aber immer 0!!!
Weil Groovy hier mit Fließkommazahlen rechnet...

Ersetzt man dann noch "int n" durch "def n", machen sich zudem die Rundungsfehler bemerkbar, es kommen dann Werte wie "-9E-10" heraus...

Wohl nicht ganz so toll, dieses Groovy ....

Grüße

Egon Schmid


Stelle deine Groovy-Frage jetzt!


Diese Seite zeigt den Thread "Groovy ist nicht Java-kompatibel!" der ehemaligen Webseite groovy-forum.de, welche durch einen Serverunfall zerstört wurde. codekicker.de hat viele Konversationen über die beliebte Programmiersprache Groovy und zugehörige Frameworks wie das Grails-Framework retten können.

Hast Du eine Frage zum Thema Groovy, Grails oder allgemein Java? Viele ehemalige groovy-forum.de Mitglieder beantworten dir auf codekicker.de deine Frage! Stelle jetzt eine Frage!

Viele weitere Diskussionen zu Grails und Groovy befinden sich auf der Threadübersicht des alten groovy-forum.de.