// Generates new password by build each part and storing it in arrayList public static String generateNewPassword(boolean l, boolean u, boolean n, boolean s, int len) { ArrayList<Integer> cs = new ArrayList<Integer>(); if (l) { for (int i = 0; i < 26; i++) { cs.add(97 + i); } } if (u) { for (int i = 0; i < 26; i++) { cs.add(65 + i); } } if (n) { for (int i = 0; i < 10; i++) { cs.add(48 + i); } } if (s) { for (int i = 0; i < 10; i++) { cs.add(33 + i); } for (int i = 0; i < 7; i++) { cs.add(58 + i); } for (int i = 0; i < 6; i++) { cs.add(91 + i); } for (int i = 0; i < 4; i++) { cs.add(123 + i); } } StringBuilder sb = new StringBuilder(); for (int i = 0; i < len; i++) { sb.append(Character.toChars(cs.get((int) (Math.random() * cs.size())))); } return sb.toString(); }
/** * Appends the encoded Unicode code point. The code point is converted to a {@code char[]} as * defined by {@link Character#toChars(int)}. * * @param codePoint the Unicode code point to encode and append. * @return this builder. * @see Character#toChars(int) */ public StringBuilder appendCodePoint(int codePoint) { append0(Character.toChars(codePoint)); return this; }