Este es el programa de prueba que he hecho por si te ayuda:
import java.util.ArrayList;
public abstract class TestPrimos {
/**
* @param args
*/
public static void main(String[] args) {
ArrayList listaNumeros = new ArrayList();
ArrayList listaPrimos = new ArrayList();
//cargamos 10 valores aleatorios entre 1 y 100
for(int i=0; i < 10; i++)
{
listaNumeros.add(new Integer((new Double(Math.random()*100)).intValue()));
}
//recorremos los 10 numeros, buscando los primos
for (int i=0; i < listaNumeros.size(); i++)
{
Integer numero = (Integer) listaNumeros.get(i);
boolean primo = true;
for (int divisor=2; divisor<=Math.sqrt(numero.intValue()); divisor++)
{
if (numero.intValue()%divisor==0) {
primo = false;
}
}
if(primo)
{
listaPrimos.add(numero);
}
}
if(listaPrimos.isEmpty())
{
System.out.println("No se han encontrado números primos.");
}
else
{
System.out.println("Se han encontrado estos primos: ");
}
for (int i=0; i < listaPrimos.size(); i++)
{
System.out.println(listaPrimos.get(i));
}
}
}