Arjun saini
Arjun saini

Reputation: 4182

How to create Random number with 5 digit combined of number and charter

I want to generate the random number like that

Note: There I FIX the ADF18 I want only take the next 5 digit with number and charter

I am successfully create the 5 digit with number

There is Various solution I am using

etc. method

With these method I am create successful random 5 digit numbers.

Any Help Appreciate....

Upvotes: 4

Views: 3716

Answers (4)

Ryan
Ryan

Reputation: 989

import java.util.Random;

public class MyStringRandomGen {

private static final String CHAR_LIST =
    "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
private static final int RANDOM_STRING_LENGTH = 5;// change the number as u want.

/**
 * This method generates random string
 * @return
 */
public String generateRandomString(){

    StringBuffer randStr = new StringBuffer();
    for(int i=0; i<RANDOM_STRING_LENGTH; i++){
        int number = getRandomNumber();
        char ch = CHAR_LIST.charAt(number);
        randStr.append(ch);
    }
    return randStr.toString();
}

/**
 * This method generates random numbers
 * @return int
 */
private int getRandomNumber() {
    int randomInt = 0;
    Random randomGenerator = new Random();
    randomInt = randomGenerator.nextInt(CHAR_LIST.length());
    if (randomInt - 1 == -1) {
        return randomInt;
    } else {
        return randomInt - 1;
    }
}

public static void main(String a[]){
    MyStringRandomGen msr = new MyStringRandomGen();
    System.out.println(msr.generateRandomString());
    System.out.println(msr.generateRandomString());
    System.out.println(msr.generateRandomString());
    System.out.println(msr.generateRandomString());
    System.out.println(msr.generateRandomString());
    System.out.println(msr.generateRandomString());
    System.out.println(msr.generateRandomString());
}
}

Upvotes: 2

Android Surya
Android Surya

Reputation: 544

   String random5Digts = UUID.randomUUID().toString().substring(0, 5);
   String randomNumber="ADF18"+random5Digts;
   //code to change lower letters to uppercase
   StringBuilder sb = new StringBuilder(randomNumber);
   for (int index = 0; index < sb.length(); index++) {
       char c = sb.charAt(index);
       if (Character.isLowerCase(c)) {
           sb.setCharAt(index, Character.toUpperCase(c));
       }
   }
   System.out.println(sb.toString());

Upvotes: 2

Krzysztof Krasoń
Krzysztof Krasoń

Reputation: 27496

You can use apache commons-lang RandomStringUtils.randomAlphanumberic:

"ADF18" + RandomStringUtils.randomAlphanumberic(5);

Upvotes: 2

you can use random UUIDs...

Example:

final String randomCode = UUID.randomUUID().toString();
// or you can play with the len...
final String randomCode2 = UUID.randomUUID().toString().substring(0, 5);

Upvotes: 8

Related Questions