SkyAphid

Word Class

May 20th, 2013
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.52 KB | None | 0 0
  1. public class Word implements Serializable{
  2.  
  3.     private static final long serialVersionUID = 790247641945230263L;
  4.  
  5.     private String word;
  6.    
  7.     ArrayList<String> definitions = new ArrayList<String>();
  8.     ArrayList<Word> synonyms = new ArrayList<Word>();
  9.     ArrayList<String> tags = new ArrayList<String>();
  10.     HashSet<String> links = new HashSet<String>();
  11.    
  12.     public Word(String word){
  13.         this.word = word.toLowerCase();
  14.     }
  15.    
  16.     public String getName(){
  17.         return word;
  18.     }
  19.    
  20.     public void addDefinition(String definition){
  21.         definitions.add(definition);
  22.     }
  23.    
  24.     public boolean removeDefintion(String definition){
  25.         if (!definitions.remove(definition)){
  26.             for (int a = 0; a < definitions.size(); a++){
  27.                 if (definitions.get(a).toLowerCase().contains(definition.toLowerCase())){
  28.                     definitions.remove(a);
  29.                     return true;
  30.                 }
  31.             }
  32.         }else return true;
  33.        
  34.         return false;
  35.     }
  36.    
  37.     public void addSynonym(Word synonym){
  38.         if (!synonyms.contains(synonym)){
  39.             synonyms.add(synonym);
  40.         }
  41.     }
  42.    
  43.     public boolean removeSynonym(Word synonym){
  44.         if (!synonyms.remove(synonym)){
  45.             for (int a = 0; a < synonyms.size(); a++){
  46.                 if (synonyms.get(a).getName().equals(synonym.getName())){
  47.                     synonyms.remove(a);
  48.                     return true;
  49.                 }
  50.             }
  51.         }else return true;
  52.        
  53.         return false;
  54.     }
  55.    
  56.     public boolean isSynonymsWith(Word synonym){
  57.         if (synonyms.contains(synonym)){
  58.             return true;
  59.         }else{
  60.             for (int a = 0; a < synonyms.size(); a++){
  61.                 if (synonyms.get(a).getName().equals(synonym.getName())){
  62.                     return true;
  63.                 }
  64.             }
  65.         }
  66.        
  67.         return false;
  68.     }
  69.    
  70.     public void addTag(String tag){
  71.         if (!tags.contains(tag)){
  72.             tags.add(tag);
  73.         }
  74.     }
  75.    
  76.     public void removeTag(String tag){
  77.         tags.remove(tag);
  78.     }
  79.    
  80.     public boolean isTaggedAs(String tag){
  81.         return tags.contains(tag.toUpperCase());
  82.     }
  83.    
  84.     public boolean tagsConsistOf(String tagPart){
  85.         for (int a = 0; a < tags.size(); a++){
  86.             if (tags.get(a).contains(tagPart)){
  87.                 return true;
  88.             }
  89.         }
  90.        
  91.         return false;
  92.     }
  93.    
  94.     public void addLink(String link){
  95.         if (!links.contains(link.toLowerCase())){
  96.             links.add(link.toLowerCase());
  97.         }
  98.     }
  99.    
  100.     public void removeLink(String link){
  101.         links.remove(link);
  102.     }
  103.    
  104.     public boolean isLinkedWith(String word){
  105.         return links.contains(word);
  106.     }
  107.    
  108.     public HashSet<String> getLinks(){
  109.         return links;
  110.     }
  111.    
  112.     public ArrayList<String> getTags(){
  113.         return tags;
  114.     }
  115.    
  116.     public ArrayList<Word> getSynonyms(){
  117.         return synonyms;
  118.     }
  119.    
  120.     public ArrayList<String> getDefinitions(){
  121.         return definitions;
  122.     }
  123. }
Advertisement
Add Comment
Please, Sign In to add comment