Я должен создать случайный генератор символов, которые возвращают отдельный символ. Символ должен расположиться в рамках букв алфавита, числа 0 до 9, и некоторые символы как.?/-. Любой пример ценился бы.
Выберите случайное число между [0, x), где x - количество различных символов. Надеюсь, выбор будет равномерным и не предсказуемым :-)
Теперь выберите символ, представляющий x.
Прибыль!
Я бы начал читать Псевдослучайность, а затем некоторые общие Генераторы псевдослучайных чисел. Конечно, ваш язык, надеюсь, уже имеет подходящую "случайную" функцию :-)
Использование простой командной строки (bash скриптинг):
$ cat /dev/urandom | tr -cd 'a-z0-9,.?/\-' | head -c 30 | xargs
t315,qeqaszwz6kxv?761rf.cj/7gc
$ cat /dev/urandom | tr -cd 'a-z0-9,.?/\-' | head -c 1 | xargs
f
n
символов'\n'
символовПроще всего сделать следующее:
Строковый алфавит
с нужными символами. N = алфавит.length ()
java.util.Random
для int x = nextInt (N)
алфавита. charAt (x)
- случайный символ из алфавита Вот пример:
final String alphabet = "0123456789ABCDE";
final int N = alphabet.length();
Random r = new Random();
for (int i = 0; i < 50; i++) {
System.out.print(alphabet.charAt(r.nextInt(N)));
}