에라토스테네스의 체

  boolean[] isPrime = new boolean[n+1]; // 0 ~ 100

  Arrays.fill(isPrime, true); // 일단 전부 소수라고 가정
  isPrime[0] = isPrime[1] = false; // 0과 1은 소수 아님

  for (int i = 2; i * i <= n; i++) {
      if (isPrime[i]) {
          for (int j = i * i; j <= 100; j += i) {
              isPrime[j] = false; // i의 배수들은 소수 아님
          }
      }
  }

  // 소수 출력
  for (int i = 2; i <= n; i++) {
      if (isPrime[i]) {
          System.out.print(i + " ");
      }
  }

간단한 for문

public class PrimeNumbersSimple {
    public static void main(String[] args) {
        for (int i = 2; i <= 100; i++) {
            if (isPrime(i)) {
                System.out.print(i + " ");
            }
        }
    }

    private static boolean isPrime(int n) {
        if (n < 2) return false;
        for (int i = 2; i <= Math.sqrt(n); i++) { // √n까지만 검사
            if (n % i == 0) return false;
        }
        return true;
    }
}