Ho l'impressione che ci sia un equivoco di fondo: il codice indicato (anche se non conosco java) mi sembra corretto per fare "la somma dei primi n numeri" cioè indicato un numero "n" lui fa la somma di tutti quelli tra 1 e n (come dice lucis : 4+3+2+1 = 10)

La "somma dei primi n NUMERI PRIMI" (cioè divisibili solo per 1 e per se stessi) è una cosa COMPLETAMENTE diversa anche perchè, prima di sommare ogni addendo bisogna verificare che sia primo, è questo è tutt'altro che semplice, (vedi: http://www.utm.edu/research/primes/prove/prove4_3.html)
In questo caso indicando n = 4 suppongo si dovrebbe avere 1+2+3 (gli unici primi minori di 4) = 6

Ho capito male ?