How to generate Eratosthenes sieve in Java

public class EratosthenesSieve {

    public static final int MAX = 121;

    public static void main(String[] args) {
        boolean[] primes = new boolean[MAX];
        eratosthenesSieve(primes);

        System.out.printf("Primes in range [2..%d] are: ", MAX);
        for (int i = 2; i < MAX; i++) {
            if(primes[i]) {
                System.out.printf(i + " ");
            }
        }
    }

    private static void eratosthenesSieve(boolean[] primes) {
        for (int i = 2; i < primes.length; i++) {
            primes[i] = true;
        }

        for (int i = 2; i < Math.sqrt(MAX); i++) {
            if (primes[i]) {
                for (int j = i * i; j < MAX; j += i) {
                    primes[j] = false;
                }
            }
        }
    }
}