Advertisement
NinoB

Hornet Comm

Mar 3rd, 2018
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.98 KB | None | 0 0
  1. import java.awt.print.Book;
  2. import java.text.MessageFormat;
  3. import java.util.ArrayList;
  4. import java.util.Arrays;
  5. import java.util.List;
  6. import java.util.Scanner;
  7.  
  8. public class HornetComm {
  9.     public static void main(String[] args) {
  10.  
  11.         Scanner console = new Scanner(System.in);
  12.         String seperator = " <-> ";
  13.         List<String> messages = new ArrayList<>();
  14.         List<String> broadcast = new ArrayList<>();
  15.  
  16.  
  17.         while (true)
  18.         {
  19.             String input = console.nextLine();
  20.             List<String> data = Arrays.asList(input.split(seperator));
  21.  
  22.             if (input.equals("Hornet is Green"))
  23.             {
  24.                 break;
  25.             }
  26.  
  27.             else if (data.size() >= 2)
  28.             {
  29.                 String firstQuery = data.get(0);
  30.                 String secondQuery = data.get(1);
  31.                 boolean firstIsDigit = firstQuery.trim().matches("[0-9]+");
  32.                 boolean secondIsDigitOrLetter = secondQuery.trim().matches("[A-Za-z0-9]+");
  33.                 boolean firstIsNoDigit = firstQuery.trim().matches("[^0-9]+");
  34.  
  35.                 if (firstIsDigit && secondIsDigitOrLetter)
  36.                 {
  37.                     String reverse = new StringBuffer(firstQuery).reverse().toString();
  38.  
  39.                     messages.add(MessageFormat.format("{0} -> {1}", reverse, secondQuery));
  40.                 }
  41.  
  42.                 else if (firstIsNoDigit && secondIsDigitOrLetter)
  43.                 {
  44.                     StringBuilder next = new StringBuilder();
  45.                     for (int i = 0; i < secondQuery.length(); i++)
  46.                     {
  47.                         if (secondQuery.charAt(i) >= 65 && secondQuery.charAt(i) <= 90)
  48.                         {
  49.                             next.append(((char)(secondQuery.charAt(i) + 32)));
  50.                         }
  51.                         else if (secondQuery.charAt(i) >= 97 && secondQuery.charAt(i) <= 122)
  52.                         {
  53.                             next.append((char)(secondQuery.charAt(i) - 32));
  54.                         }
  55.                         else
  56.                         {
  57.                             next.append((char)secondQuery.charAt(i));
  58.                         }
  59.                     }
  60.  
  61.                     broadcast.add(MessageFormat.format("{0} -> {1}", next, firstQuery));
  62.                 }
  63.                
  64.             }
  65.  
  66.         }
  67.  
  68.         System.out.println("Broadcasts:");
  69.  
  70.         if (broadcast.size() > 0)
  71.         {
  72.             for (String message:
  73.                  broadcast) {
  74.                 System.out.println(message);
  75.             }
  76.         }
  77.         else
  78.         {
  79.             System.out.println("None");
  80.         }
  81.  
  82.         System.out.println("Messages:");
  83.  
  84.         if (messages.size() > 0)
  85.         {
  86.             for (String message:
  87.                     messages) {
  88.                 System.out.println(message);
  89.             }
  90.         }
  91.         else
  92.         {
  93.             System.out.println("None");
  94.         }
  95.  
  96.     }
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement