Что хочет валик?
package com.javarush.task.task32.task3204;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.concurrent.ThreadLocalRandom;
/*
Генератор паролей
*/
public class Solution {
public static void main(String[] args) {
ByteArrayOutputStream password = getPassword();
System.out.println(password.toString());
}
public static ByteArrayOutputStream getPassword() {
//Range ascii values
int[][] minMax = new int[][] {{48, 57}, {65, 90}, {97, 122}};
ByteArrayOutputStream baos = new ByteArrayOutputStream();
char[] chars = new char[8];
int[] check = new int[8];
for (int i = 0; i < chars.length; i++) {
int r = ThreadLocalRandom.current().nextInt(0, 2 + 1);
check[i] = r;
chars[i] = (char) ThreadLocalRandom.current()
.nextInt(minMax[r][0], minMax[r][1] + 1);
}
//Check char array contains at least one value
for (int i = 0; i < 3; i++) {
for (int j = 0; j < check.length; j++) {
if (check[j] == i)
break;
else if (j == check.length - 1)
getPassword();
}
}
//Write to baos
try {
baos.write(new String(chars).getBytes());
} catch (IOException e) {
e.printStackTrace();
}
return baos;
}
}