How to select random two digits from anywhere in a number with Java

1 Answer

0 votes
import java.util.Random;

public class RandomTwoDigits {

    // Function to select random two distinct digits from a number
    public static String getRandomTwoDigits(long number) {
        String numStr = Long.toString(number);

        if (numStr.length() < 2) {
            return "Error: number must have at least 2 digits";
        }

        Random rand = new Random();

        int i = rand.nextInt(numStr.length());
        int j;
        do {
            j = rand.nextInt(numStr.length());
        } while (j == i);  // ensure different positions

        // Form the two-digit string
        return "" + numStr.charAt(i) + numStr.charAt(j);
    }

    public static void main(String[] args) {
        long num = 1234567;
        String randomTwo = getRandomTwoDigits(num);

        System.out.println("Random two digits: " + randomTwo);
    }
}


     
/*
run:
    
Random two digits: 71
  
*/

 



answered Nov 26, 2025 by avibootz
...