Salinan kode adalah sebagai berikut:
String password = randomutil.generateString (10);
Kode sumber adalah sebagai berikut:
Salinan kode adalah sebagai berikut:
paket com.javaniu.core.util;
impor java.util.random;
Kelas Publik Randomutil {
string final statis public allchar = "0123456789AbcdefghijKlmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz";
letterchar string final public static = "abcdefghijkllmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz";
public static final string numberChar = "0123456789";
/**
* Mengembalikan string acak panjang tetap (termasuk hanya huruf dan angka huruf besar dan kecil)
*
* Panjang @param
* Panjang string acak
* @return random string
*/
Public Static String GenerateString (int panjang) {
StringBuffer SB = StringBuffer baru ();
Acak acak = acak baru ();
untuk (int i = 0; i <panjang; i ++) {
SB.Append (allchar.charat (random.nextInt (allchar.length ())));
}
return sb.tostring ();
}
/**
* Mengembalikan string huruf murni acak panjang tetap (termasuk hanya huruf besar dan kecil)
*
* Panjang @param
* Panjang string acak
* @return random string
*/
public static string generatemixString (int panjang) {
StringBuffer SB = StringBuffer baru ();
Acak acak = acak baru ();
untuk (int i = 0; i <panjang; i ++) {
SB.Append (allchar.charat (random.nextInt (letterchar.length ())));
}
return sb.tostring ();
}
/**
* Mengembalikan string huruf modal murni acak panjang tetap (termasuk hanya huruf besar)
*
* Panjang @param
* Panjang string acak
* @return random string
*/
Public Static String GenerAteLowerString (int panjang) {
return generatemixstring (panjang) .tolowercase ();
}
/**
* Mengembalikan string kecil murni acak panjang tetap (termasuk hanya huruf besar dan huruf kecil)
*
* Panjang @param
* Panjang string acak
* @return random string
*/
string statis publik menghasilkanperstring (panjang int) {
return generatemixString (panjang) .tuppercase ();
}
/**
* Menghasilkan string 0 murni panjang tetap
*
* Panjang @param
* Panjang string
* @return pure 0 string
*/
Public Static String GenerateZerOstring (int panjang) {
StringBuffer SB = StringBuffer baru ();
untuk (int i = 0; i <panjang; i ++) {
SB.Append ('0');
}
return sb.tostring ();
}
/**
* Hasilkan string panjang tetap berdasarkan angka, panjangnya tidak cukup untuk ditambahkan ke yang sebelumnya.
*
* @param num
* nomor
* @param fixdlenth
* Panjang string
* @return string panjang tetap
*/
string statis public tofixdlengthString (num panjang, int fixdlenth) {
StringBuffer SB = StringBuffer baru ();
String strnum = string.ValueOf (num);
if (fixdlenth - strnum.length ()> = 0) {
SB.Append (GenerateZerOstring (FixDlenth - Strnum.length ()));
} kalau tidak {
Lempar RuntimeException baru ("ganti nomor" + num + "Convert to length" + FixDlenth
+ "Pengecualian terjadi di string!");
}
SB.Append (Strnum);
return sb.tostring ();
}
/**
* Jumlah digit len yang dihasilkan setiap kali berbeda
*
* @param param
* @Return Jumlah panjang tetap
*/
public static int getNotSimple (int [] param, int len) {
Rand acak = acak baru ();
untuk (int i = param.length; i> 1; i--) {
int index = rand.nextint (i);
int tmp = param [indeks];
param [index] = param [i - 1];
param [i - 1] = tmp;
}
Hasil int = 0;
untuk (int i = 0; i <len; i ++) {
hasil = hasil * 10 + param [i];
}
hasil pengembalian;
}
public static void main (string [] args) {
System.out.println ("Mengembalikan string acak panjang tetap (hanya berisi huruf besar dan huruf besar):" + generatestring (10));
System.out
.println ("Mengembalikan string huruf murni acak panjang tetap (hanya berisi huruf besar dan kecil):" + generatemixString (10));
System.out.println ("Mengembalikan String Hulu Murni Random Panjang Tetap (termasuk hanya huruf besar dan huruf besar):"
+ GenerAteLowerString (10));
System.out.println ("Mengembalikan String Kecil Murni Random Panjang Tetap (termasuk hanya huruf besar dan huruf kecil):"
+ GenerateupperString (10));
System.out.println ("Hasilkan string 0 murni panjang tetap:" + generateZerOstring (10));
System.out.println ("Buat string panjang tetap berdasarkan nomor, panjangnya tidak cukup untuk ditambahkan ke yang sebelumnya:"
+ tofixdlengthString (123, 10));
int [] di = {1, 2, 3, 4, 5, 6, 7};
System.out.println ("Jumlah digit Len yang dihasilkan setiap kali berbeda:" + getNotSimple (dalam, 3));
}
}
Ada gambar dan kebenaran:
Suplemen karakter acak java
Hari ini saya melihat demo generasi karakter acak Java di Zuidaimai, yang kebetulan digunakan, tetapi saya menemukan bahwa itu tidak lengkap, jadi saya mengatur ulang dan membagikannya dengan teman -teman yang membutuhkan
Salinan kode adalah sebagai berikut:
public static void main (string [] args) {
// string s = randomNum.getRandomnumStr (5);
//System.out.println(s);
System.out.println ("menghasilkan 5 string yang berisi 5 karakter:");
Randomnum.suijizifuchuan (5,5);
System.out.println ("menghasilkan 3 string yang berisi 6 karakter:");
Randomnum.suijizifuchuan (6,3);
System.out.println ("Hasilkan 1 hingga 20 string yang berisi 1 hingga 10 karakter:");
Randomnum.suijizifuchuan ((int) (20*math.random ()), (int) (10*math.random ()));
System.out.println ("Karakter Generasi Acak:");
int i = 0;
while (i <(int) (10*math.random ())) {
Randomnum.suijizifuchuan ((int) (20*math.random ()), 1);
i ++;
}
}
public static void suijizifuchuan (int x, int y) {
untuk (int j = 0; j <y; j ++) {
untuk (int i = 0; i <x; i ++) {
int a = (int) (100*math.random ()+100*math.random ());
while (true) {
if (a> 96 & a <123)
merusak;
kalau tidak
a = (int) (100*math.random ()+100*math.random ());
}
System.out.print ((char) a);
}
System.out.println ();
}
}
Hasil Eksekusi:
Sumber: http://www.zuidaima.com/share/1585762703215616.htm