Spaces:
Running
Running
| Write a program that asks the user for names. | |
| The given names are added to the list. | |
| However, if the name is already in the list, it is not added again, but an error message is printed to the user. | |
| When the user enters 'quit', the list of names is printed and the program is terminated. | |
| Example execution: | |
| Give a name: Jack | |
| Hello, Jack | |
| Give a name: Jill | |
| Hello, Jill | |
| Give a name: Jack | |
| Name has already been given | |
| Give a name: Ann | |
| Hello, Ann | |
| Give a name: Jill | |
| Name has already been given | |
| Give a name: quit | |
| Names: [Jack, Jill, Ann] | |
| import java.util.Random; | |
| import java.util.ArrayList; | |
| import java.util.Scanner; | |
| public class Test{ | |
| public static void main(String[] args){ | |
| final Random r = new Random(); | |
| Scanner reader= new Scanner(System.in); //marked as correct if placed outside | |
| ArrayList<String> names = new ArrayList<String>(); | |
| while (true) { | |
| // Scanner reader= new Scanner(System.in); // marked as incorrect if placed inside | |
| System.out.print("Give a name: "); | |
| String name = String.valueOf(reader.nextLine()); | |
| if (name.equals("quit")) { | |
| break; | |
| } | |
| if (names.contains(name)) { | |
| System.out.println("Name has already been given"); | |
| } | |
| else { | |
| names.add(name); | |
| System.out.println("Hello, " + name); | |
| } | |
| } | |
| System.out.println("Names: " + names); | |
| } | |
| } | |
| Give a name: Jack | |
| Hello, Jack | |
| Give a name: Jill | |
| Hello, Jill | |
| Give a name: Pete | |
| Hello, Pete | |
| Give a name: Kate | |
| Hello, Kate | |
| Give a name: Ann | |
| Hello, Ann | |
| Give a name: Pete | |
| Name has already been given | |
| Give a name: Jill | |
| Name has already been given | |
| Give a name: Larry | |
| Hello, Larry | |
| Give a name: Kate | |
| Name has already been given | |
| Give a name: Maya | |
| Hello, Maya | |
| Give a name: Maya | |
| Name has already been given | |
| Give a name: Ann | |
| Name has already been given | |
| Give a name: quit | |
| Names: [Jack, Jill, Pete, Kate, Ann, Larry, Maya] | |