I can’t seem to convert the following algorithm into Java successfully, please forgive the horrible picture quality but a question I’m working on asks:

I have tried to use the following code to represent the Euclidean Algorithm, but it doesn’t seem to work. I don’t really know how I would go about representing it in Java code. Any help?
public static int gcd(int x, int y) {
if (y == 0) {
return x;
} else if (x >= y && y > 0) {
return gcd(y, (x % y));
}
}
Thank you.
There is no arbitrary order between x and y.