svephoto

Secret Chat [Java]

Mar 30th, 2021 (edited)
398
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import java.util.Scanner;
  2.  
  3. public class SecretChat {
  4.     public static void main(String[] args) {
  5.         Scanner scan = new Scanner(System.in);
  6.  
  7.         String message = scan.nextLine();
  8.  
  9.         String input = scan.nextLine();
  10.  
  11.         while (!input.equals("Reveal")) {
  12.             String[] token = input.split(":\\|:");
  13.             String command = token[0];
  14.  
  15.             switch (command) {
  16.                 case "InsertSpace": {
  17.                     int index = Integer.parseInt(token[1]);
  18.  
  19.                     message = message.substring(0, index).concat(" ").concat(message.substring(index));
  20.  
  21.                     System.out.println(message);
  22.                     break;
  23.                 }
  24.                 case "Reverse": {
  25.                     String substring = token[1];
  26.                     StringBuilder newSubstring = new StringBuilder(substring);
  27.  
  28.                     if (message.contains(substring)) {
  29.                         substring = newSubstring.reverse().toString();
  30.  
  31.                         int startIndex = message.indexOf(token[1]);
  32.                         int endIndex = startIndex + token[1].length();
  33.  
  34.                         StringBuilder updatedString = new StringBuilder(message);
  35.  
  36.                         updatedString.delete(startIndex, endIndex);
  37.                         message = updatedString.append(substring).toString();
  38.  
  39.                         System.out.println(message);
  40.                     } else {
  41.                         System.out.println("error");
  42.                     }
  43.  
  44.                     break;
  45.                 }
  46.                 case "ChangeAll": {
  47.                     String substringChange = token[1];
  48.                     String replacement = token[2];
  49.  
  50.                     message = message.replace(substringChange, replacement);
  51.  
  52.                     System.out.println(message);
  53.                     break;
  54.                 }
  55.             }
  56.  
  57.             input = scan.nextLine();
  58.         }
  59.  
  60.         System.out.println("You have a new text message: " + message);
  61.     }
  62. }
  63.  
RAW Paste Data Copied