Допуская что ошибка в этом:
if (Pattern.matches("^[a-zA-Z_0-9]", test))
Но какая??package com.javarush.task.task32.task3204;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.regex.Pattern;
/*
Генератор паролей
*/
public class Solution {
public static void main(String[] args) {
ByteArrayOutputStream password = getPassword();
System.out.println(password.toString());
}
public static ByteArrayOutputStream getPassword() {
String[] str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split("");
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < 8; i++) {
int f = ((int)(Math.random() * str.length));
stringBuilder.append(str[f]);
}
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
String test = stringBuilder.toString();
if (Pattern.matches("^[a-zA-Z_0-9]", test)){
getPassword();
} else {
try {
byteArrayOutputStream.write(test.getBytes());
} catch (IOException e) {
e.printStackTrace();
}
}
return byteArrayOutputStream;
}
}