Shellsec

Fuld version: Random Password Generator
Du ser lige nu en skrabet udgave af vores indhold. Se den fulde version med ordentlig formatering.
Jeg så lige, at der var en random text generator herinde, så jeg tænkte, at jeg ville poste min egen.
Jeg kalder den Random Password Generator, men det er stort set det samme.

Kode:
import java.util.Random;

public class RandomPasswordGenerator {
    
    private Random rand;
    
    public void start() {
        rand = new java.util.Random();
        System.out.println(randomString(333)); //333 er længden på det string den laver
    }
    
    public String randomString(int length) {
        String s = "";
        for(int i = 1; i <= length; i++) {
            s += Character.toString((char)Character.toChars(rand.nextInt(26)+97)[0]); //97 can skiftes ud med 65 for at få det i lowercase.
        }
        return s;
    }
    
    public static void main(String[] args) {
        new RandomPasswordGenerator().start();
    }
}
Kan umiddelbart ikke se hvorfor du har din start metode?
Eller hvorfor du vil arbejde med objekter?

Det kunne goeres en smule brugbart, hvis nogle af konstanterne blev til variabler, som brugeren kunne give med.
1)
Nu når du har din Random objekt deklareret i toppen kan du ligeså godt initalisere den. så:
Kode:
private Random rand;
bliver til:
Kode:
private Random rand = new java.util.Random();

2) Lav en seperat klasse til generatoren som ikke så ligger i samme fil
3)Når der arbjdes med en streng (RAndomString metoden) og du laver en masse tilføjelser så kan StringBuilder anbefales da den er lavet til den slags.
4)Som FlyingSonyy siger så vil jeg også foretrækket at du f.eks. giver mulighed for at angive hvilke slags chars du vil have i koden i funktionskaldet.