You really don't have a question about a "while-loop" - I'd suggest reading
this. in any case, this isn't that hard. "y = x - y". the single "=" is the assignment operator. that mean "evaluate the stuff on the right, and store it in the variable on the left". so, if x = 7 and y = 2 when you get to this line, we evaluate the right. 7 - 2 = 5. Now, we store that value in what is on the left... in this case, y. so, y now becomes 5.
System.out.println(x + "" + y +" ");
the "System.out.println" is how you print something to the screen. Usually, you want to print a String, which is just a sequence of printable characters. x and y in your program are ints, and are not printable, so we use a little trick here. you are allowed to concatenate strings by using the "+" operator. so you could do "fred " + "is cool" and you end up with the string "fred is cool".
with
, you are adding an int to a string. Java is kind enough to automatically convert the int to a string, in this case, changing the value of, say, 5, to the CHARACTER 5, or technically, a string that contains the character 5.
So basically, it's a quick, cheap and easy way to convert numbers to characters for printing.