Random String

// NG means Name Generate, so this file named Ng.java

import java.util.Random;
import java.util.Scanner;

public class Ng {
    public static void main(String[] args) {
        try (Scanner scan = new Scanner(System.in)) {
            Random rand = new Random();
            while (true) {//begin loop
				//define variables
                String firstname, lastname, firstpart, lastpart, username;
                int randomNumber;
				//begin the loop of the first name
                while (true) {// begin to obtain the first name
					// set exit of the loop
                    System.out.println("Please enter your first name or 'bye' to quit.");
                    firstname = scan.nextLine().trim();
                    if (firstname.equalsIgnoreCase("bye")) {
                        System.out.println("Program ends. Goodbye!");
						System.out.println("--------------------------------------");
                        return;
                    }
					// check and confirm the first name
                    if (firstname.length() < 2) {
                        System.out.println("The length of first name must be at least 2 characters long.");
                        continue;
                    }
                    break;
                }
				//begin the loop of the last name
                while (true) {// begin to obtain the last name
					//set exit of the loop
                    System.out.println("Please enter your last name or 'bye' to quit.");
                    lastname = scan.nextLine().trim();
                    if (lastname.equalsIgnoreCase("bye")) {
                        System.out.println("Program ends. Goodbye!");
						System.out.println("--------------------------------------");
                        return;
                    }
					// check and confirm the last name
                    if (lastname.length() < 4) {
                        System.out.println("The length of first name must be at least 2 characters long.");
                        continue;
                    }
                    break;
                }
				//calculate and generate new random name
                firstpart = firstname.substring(0, 2);
                lastpart = lastname.substring(0, 4);
                randomNumber = rand.nextInt(90) + 10;
                username = firstpart + lastpart + randomNumber;
				//calculate samples
				String [] [] samples = {
					{"Michael", "Jackson"}, {"Nancy", "Green"}, {"Tyler", "Stone"}, {"Sunny", "Lincoln"}, {"Mike", "Swift"}
				};
				System.out.println("-----------------Samples----------------------");
				for(String[] sample : samples) {
					String sampleFirst = sample [0];
					String sampleLast  = sample [1];
					String sampleFirstPart = sampleFirst.substring (0, 2);
					String sampleLastPart  = sampleLast.substring (0, 4);
					int sampleRandomNumber = rand.nextInt(90) + 10;
					String sampleUsername = sampleFirstPart + sampleLastPart + sampleRandomNumber;
				//output the results
				System.out.printf("Name: %s %s -> Username: %s%n", sampleFirst, sampleLast, sampleUsername);
                }
				System.out.println("-----------------User Input-------------------");
                System.out.println("The firstname is : " + firstname);
                System.out.println("The lastname is : " + lastname);
                System.out.println("The generated randomnumber is : " + randomNumber);
                System.out.println("The generated Username is : " + username);
				System.out.println("----------------------------------------------");

            }
        }
    }
}
Scroll to Top