Advertisement
Guest User

Untitled

a guest
Jun 29th, 2017
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.75 KB | None | 0 0
  1. import java.util.*;
  2. import java.lang.StringBuilder;
  3.  
  4. /**
  5.  * A monkey, whos job is to make words. (3 or more letters long)
  6.  * @author Jack Peter Fletcher
  7.  */
  8. public class Monkey
  9. {
  10.     private String ALPHABET;
  11.     private Random rnd;
  12.     private StringBuilder wordBuilder;
  13.  
  14.     /**
  15.      * Constructor for objects of class Monkey
  16.      */
  17.     public Monkey()
  18.     {
  19.         ALPHABET = new String("qwertyuiopasdfghjklzxcvbnm ");
  20.         rnd = new Random();
  21.     }
  22.    
  23.     public String terminalTester()
  24.     {
  25.         return "banana";
  26.         //used to test 'terminal' dictionary function.
  27.     }
  28.    
  29.     /**
  30.      * Method to generate words, a word finishes when a space is drawn.
  31.      */
  32.     public String generateWord()
  33.     {
  34.         wordBuilder = new StringBuilder();
  35.         char returnChar;
  36.         String generatedWord = "";
  37.         do{
  38.             returnChar = letterSelector();
  39.             if(returnChar != ' '){
  40.                 wordBuilder.append(returnChar);
  41.                 if(wordBuilder.length() > 27){
  42.                     //No words longer than 27 chars, not exactly true to monkey theory, but gets results faster
  43.                     //as very long words are more likely with 'space' only having a 1 in 27 chance of being called.
  44.                     generatedWord = wordBuilder.toString();
  45.                     break;
  46.                 }
  47.             }else{
  48.                 generatedWord = wordBuilder.toString();
  49.             }  
  50.         }while(returnChar != ' ');
  51.         return generatedWord;
  52.     }
  53.    
  54.     /**
  55.      * method to get a random charecter. A-Z and space.
  56.      */
  57.     private char letterSelector(){
  58.         char randomChar;
  59.         randomChar = ALPHABET.charAt(rnd.nextInt(27));
  60.         return randomChar;
  61.     }
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement