Unexpected output with this java code
<p>I happen to get this code from my teacher and have no idea how it prints "hello"</p>

<pre><code>public static void main(String[] args) {
    Random r = new Random(-229985452);
    int i = 1;
    while (i != 0) {
        i = r.nextInt(27);
        System.out.print((char) ('`' + i));
    }
}
</code></pre>

<p>Explanations? </p>
