diff options
author | RossTheRoss <mstrapp@protonmail.com> | 2020-01-30 16:55:04 -0600 |
---|---|---|
committer | RossTheRoss <mstrapp@protonmail.com> | 2020-01-30 16:55:04 -0600 |
commit | 175721a63b426355274fa9e8063f762020ab8362 (patch) | |
tree | cf2c1b33233d660c9f50de5e659b9343bb264984 /csci1913/Java/lab10_strap012.java | |
parent | Make Python thing in Python (diff) | |
download | homework-175721a63b426355274fa9e8063f762020ab8362.tar homework-175721a63b426355274fa9e8063f762020ab8362.tar.gz homework-175721a63b426355274fa9e8063f762020ab8362.tar.bz2 homework-175721a63b426355274fa9e8063f762020ab8362.tar.lz homework-175721a63b426355274fa9e8063f762020ab8362.tar.xz homework-175721a63b426355274fa9e8063f762020ab8362.tar.zst homework-175721a63b426355274fa9e8063f762020ab8362.zip |
R E A R R A N G E
Diffstat (limited to 'csci1913/Java/lab10_strap012.java')
-rw-r--r-- | csci1913/Java/lab10_strap012.java | 148 |
1 files changed, 0 insertions, 148 deletions
diff --git a/csci1913/Java/lab10_strap012.java b/csci1913/Java/lab10_strap012.java deleted file mode 100644 index 06c0dfa..0000000 --- a/csci1913/Java/lab10_strap012.java +++ /dev/null @@ -1,148 +0,0 @@ -class AssociationList<Key, Value> { - private class Node { - private Key key; - private Value value; - private Node next; - private Node(Key k, Value v, Node n) { - key=k; value=v; next=n; - } - } - private Node head; - public AssociationList() { - head = new Node(null, null, null); - } - public void delete(Key key) { - Node left = head; - Node right = head.next; - while (right!=null) { - if (isEqual(right.key, key)) { - left.next=right.next; - break; - } else { - left=right; right=right.next; - } - } - - } - public Value get(Key key) { - Node where=head.next; - while (where!=null) { - if (isEqual(where.key,key)) { - return where.value; - } else { - where=where.next; - } - } //No matching key found - throw new IllegalArgumentException(); - } - private boolean isEqual(Key leftKey, Key rightKey) { - if (leftKey == null || rightKey == null) { - return leftKey == rightKey; - } else { - return leftKey.equals(rightKey); - } - } - public boolean isIn(Key key) { - Node where = head.next; - while (where != null) { - if (isEqual(where.key, key)) { - return true; - } else { - where = where.next; - } - } // No matching key found - return false; - } - public void put(Key key, Value value) { - Node where=head.next; - boolean found=false; - while (where!=null){ - if(isEqual(key, where.key)) { - where.value=value; - found=true; - break; - } else { - where=where.next; - } - } //End of while - if (!found) { - Node temp=head.next; - head.next= new Node(key, value, temp); - } - } -} - -// -// Tests for CSci 1913 Lab 10 -// James Moen -// 08 Apr 19 -// -// The TRY-CATCH statements catch exceptions thrown by ASSOCIATION LIST's -// methods, so that the program can continue to run even if a method fails. -// -// Each test has a comment that shows what it should print and how many points -// it is worth, for a total of 40 points. - -// HOGWARTS. The Hogwarts dating service. - -class Hogwarts { - - // MAIN. Make an instance of ASSOCIATION LIST and test it. - - public static void main(String[] args) { - AssociationList<String, String> list = new AssociationList<String, String>(); - - System.out.println(list.isIn(null)); // false 2 points. - - try { - System.out.println(list.get(null)); - } catch (IllegalArgumentException ignore) { - System.out.println("No null"); // No null 2 points. - } - - list.put(null, "Wormtail"); - list.put("Ron", "Lavender"); - list.put("Voldemort", null); - list.put("Dean", "Ginny"); - - System.out.println(list.isIn("Dean")); // true 2 points. - System.out.println(list.isIn("Ginny")); // false 2 points. - System.out.println(list.isIn("Ron")); // true 2 points. - System.out.println(list.isIn("Voldemort")); // true 2 points. - System.out.println(list.isIn(null)); // true 2 points. - System.out.println(list.isIn("Joanne")); // false 2 points. - - System.out.println(list.get("Ron")); // Lavender 2 points. - System.out.println(list.get("Dean")); // Ginny 2 points. - System.out.println(list.get("Voldemort")); // null 2 points. - System.out.println(list.get(null)); // Wormtail 2 points. - - try { - System.out.println(list.get("Joanne")); - } catch (IllegalArgumentException ignore) { - System.out.println("No Joanne"); // No Joanne 2 points. - } - - list.delete(null); - - System.out.println(list.isIn(null)); // false 2 points. - - list.put(null, null); - list.put("Harry", "Ginny"); - list.put("Ron", "Hermione"); - - System.out.println(list.isIn(null)); // true 2 points. - System.out.println(list.get(null)); // null 2 points. - System.out.println(list.get("Harry")); // Ginny 2 points. - System.out.println(list.get("Dean")); // Ginny 2 points. - System.out.println(list.get("Ron")); // Hermione 2 points. - - list.delete("Dean"); - - try { - System.out.println(list.get("Dean")); - } catch (IllegalArgumentException ignore) { - System.out.println("No Dean"); // No Dean 2 points. - } - } -}
\ No newline at end of file |