si, ma visto che non deve fare elaborazioni sulla serie di passwords, è sprecato usare uno StringBuilder (così come uno StringBuffer).
eccoti un esempio che puoi modificare a piacimento:
codice:
import java.io.PrintWriter;
import java.util.Random;
/**
 * Classe adibita alla generazione di password numeriche di 10 numeri e al salvataggio delle stesse in un file di testo chiamato passwords.txt
 * @author Naruto 92
 */
public class ScritturaPassword
{
    private String passwords;
    private PrintWriter out;
    private Random rnd;
    private int numPasswords, lungPasswords;
    /**
     * Costruttore della classe ScritturaPassword
     */
    public ScritturaPassword(){
        try{
            out=new PrintWriter("passwords.txt");
        }catch(Exception ex){}
        rnd=new Random();
        numPasswords=2000;
        lungPasswords=10;
        passwords="";
    }
    /**
     * Genera le password
     */
    public void generaPasswords(){
        for(int i=0; i<numPasswords; i++){
            for(int j=0; j<lungPasswords; j++){
                passwords+=(rnd.nextInt(10));
            }
            passwords+=("\r\n");
        }
    }
    /**
     * Scrive le password sul disco
     */
    public void scriviPasswords(){
        out.print(passwords);
        out.flush();
        out.close();
    }
    /**
     * Avvio del programma
     * @param args vettore di stringhe
     */
    public static void main(String args[]){
        ScritturaPassword sp=new ScritturaPassword();
        sp.generaPasswords();
        sp.scriviPasswords();
    }
}