Ten thousand and first prime checker takes a very long time
The square root calculation could just be done before the loop.  Since this value does not change within the function, it doesn't need to be recalculated each time through the loop.

public static boolean isPrime(int num) {
    if (num % 2 == 0) return false;

    int squareRoot = Math.floor(Math.sqrt(num));
    for (int i = 3; i &lt; squareRoot; i += 2) {
        if (num % i == 0) return false;
    }

    return true;
}