thomasfelix

PBO 5

Nov 15th, 2020 (edited)
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.12 KB | None | 0 0
  1. import java.util.*;
  2.  
  3. /**
  4.  * Class yang berisi respon/tanggapan yang nanti akan diberikan kepada user.
  5.  *
  6.  * @author Thomas Felix
  7.  * @version 15 November 2020
  8.  */
  9.  
  10. public class Responder
  11. {
  12.     private Random randomGenerator;
  13.     private ArrayList<String> defaultResponses;
  14.     private HashMap<String, String> responseMap;
  15.    
  16.     public Responder()
  17.     {
  18.         defaultResponses = new ArrayList<String>();  
  19.         responseMap = new HashMap<String, String>();  
  20.         fillResponsesMap();  
  21.         fillDefaultResponse();  
  22.         randomGenerator = new Random();
  23.     }
  24.    
  25.     public String generateResponse(HashSet<String> words)
  26.     {
  27.         for (String word : words)
  28.         {
  29.             String response = responseMap.get(word);
  30.             if (response != null)
  31.             {
  32.                 return response;
  33.             }
  34.         }
  35.        
  36.         return pickDefaultResponse();
  37.     }
  38.    
  39.     private void fillDefaultResponse()
  40.     {
  41.         defaultResponses.add("Maaf, kami tidak mengerti maksud Anda.");
  42.         defaultResponses.add("Bisakah diulang pertanyaan Anda?");
  43.         defaultResponses.add("Silakan mencoba lagi.");
  44.     }
  45.    
  46.     private void fillResponsesMap()
  47.     {
  48.         responseMap.put("lemot", "Laptop/PC banyak aplikasi berat, hapus aplikasi yang tidak perlu.\n");
  49.         responseMap.put("mahal", "Makanya kerja/nabung h3h3.\n");
  50.         responseMap.put("baru", "Tentu ada dong. Bisa dilihat-lihat dulu.\n");
  51.         responseMap.put("virus", "Coba di-scan dulu pakai antivirus. Jika memang parah, harus install ulang :(.\n");
  52.         responseMap.put("pagi", "Pagi juga. Ada yang bisa dibantu?\n");
  53.         responseMap.put("siang", "Siang juga. Ada yang bisa dibantu?\n");
  54.         responseMap.put("malam", "Malam juga. Ada yang bisa dibantu?\n");
  55.         responseMap.put("halo", "Halo juga. Ada yang bisa dibantu?\n");
  56.         responseMap.put("hai", "Hai juga. Ada yang bisa dibantu?\n");
  57.     }
  58.    
  59.     private String pickDefaultResponse()  
  60.     {  
  61.         int index = randomGenerator.nextInt(defaultResponses.size());  
  62.         return defaultResponses.get(index);  
  63.     }  
  64. }
Advertisement
Add Comment
Please, Sign In to add comment