Advertisement
Guest User

Inbox Manager

a guest
Mar 29th, 2020
509
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.23 KB | None | 0 0
  1. package com.company;
  2.  
  3. import java.util.*;
  4.  
  5. public class products {
  6.     public static void main(String[] args) {
  7.         Scanner scanner = new Scanner(System.in);
  8.         HashMap<String, ArrayList> namesAndEmails = new HashMap<>();
  9.         LinkedHashMap<String, Integer> usersCount = new LinkedHashMap<>();
  10.         String line = scanner.nextLine();
  11.  
  12.         while (!"Statistics".equals(line)) {
  13.             String[] tokens = line.split("->");
  14.             String command = tokens[0];
  15.             switch (command) {
  16.                 case "Add":
  17.                    String userName = tokens[1];
  18.                     if (namesAndEmails.containsKey(userName)) {
  19.                         System.out.printf("%s is already registered%n", userName);
  20.                     } else {
  21.                         namesAndEmails.put(userName, new ArrayList());
  22.                         usersCount.put(userName, 0);
  23.                         int count = usersCount.get(userName) + 1;
  24.                         usersCount.put(userName, count);
  25.                     }
  26.                     break;
  27.                 case "Send":
  28.                     String username = tokens[1];
  29.                     String eMail = tokens[2];
  30.                     namesAndEmails.get(username).add(eMail);
  31.                     break;
  32.                 case "Delete":
  33.                     String user = tokens[1];
  34.                     if (namesAndEmails.containsKey(user)) {
  35.                         namesAndEmails.remove(user);
  36.                     } else {
  37.                         System.out.printf("%s not found!%n", user);
  38.                     }
  39.                     break;
  40.             }
  41.  
  42.             line = scanner.nextLine();
  43.         }usersCount.entrySet().forEach(entry ->System.out.println("Users count: " + entry.getValue()));
  44.  
  45.         namesAndEmails.entrySet().stream().sorted((f, s) -> {
  46.             int sum = s.getValue().size() - f.getValue().size();
  47.             if (sum == 0) {
  48.                 f.getKey().compareTo(s.getKey());
  49.             }
  50.             return sum;
  51.         }).forEach(entry -> {
  52.             System.out.println(entry.getKey());
  53.             System.out.print("- ");
  54.  
  55.                 System.out.printf(String.join( "- %n", entry.getValue()));
  56.  
  57.         });
  58.     }
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement