// 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("----------------------------------------------");
}
}
}
}