Explorar el Código

part 4 and 5 done

Kaitrina High hace 6 años
padre
commit
abc199b64c

+ 49
- 0
src/main/java/TableNested/TableNested.java Ver fichero

@@ -1,5 +1,7 @@
1 1
 package TableNested;
2 2
 
3
+import Table.Entry;
4
+
3 5
 import java.util.ArrayList;
4 6
 
5 7
 /**
@@ -8,4 +10,51 @@ import java.util.ArrayList;
8 10
  */
9 11
 public class TableNested<K, V> {
10 12
 
13
+    public TableNested() {
14
+        this.entries = new ArrayList<>();
15
+    }
16
+
17
+    private ArrayList<Entry<K, V>> entries;
18
+
19
+
20
+    /*
21
+        takes a key and returns either the entry from the arraylist with that key or null if none is found
22
+         */
23
+    public V get(K key) {
24
+        for (int i = 0; i < entries.size(); i++) {
25
+            if (entries.get(i).getKey().equals(key)) {
26
+                return (V) entries.get(i).getValue();
27
+            }
28
+        }
29
+        return null;
30
+    }
31
+
32
+
33
+    /*
34
+    put takes a key value and sets the value in the Arraylist with that key or null if none is found
35
+    note keys are unique
36
+     */
37
+    public void put(K key, V value) {
38
+        //check to see if key exists, if so replace value, if not add both key and value
39
+        for (int i = 0; i < entries.size(); i++) {
40
+            if (entries.get(i).getKey().equals(key)) {
41
+                entries.remove(i);
42
+                entries.add(new Entry<>(key, value));
43
+                break;
44
+            }
45
+        }
46
+        entries.add(new Entry<>(key, value));
47
+    }
48
+
49
+
50
+    public void remove(K key) {
51
+        for (int i = 0; i < entries.size(); i++) {
52
+            if (entries.get(i).getKey().equals(key)) {
53
+                entries.remove(i);
54
+                break;
55
+            }
56
+        }
57
+    }
58
+
11 59
 }
60
+

+ 17
- 15
src/test/java/Swap/SwapTest.java Ver fichero

@@ -1,16 +1,18 @@
1 1
 package Swap;
2
-//
3
-//import org.junit.Assert;
4
-//import org.junit.Test;
5
-//
6
-///**
7
-// * Get the tests passing.
8
-// */
9
-//public class SwapTest {
10
-//    @Test
11
-//    public void testSwap() throws Exception {
12
-//        Double[] result = Swap.swap(0,1, 1.5, 2,3);
13
-//        Double[] expected = {2.0, 1.5, 3.0};
14
-//        Assert.assertArrayEquals(expected, result);
15
-//    }
16
-//}
2
+
3
+import org.junit.Assert;
4
+import org.junit.Test;
5
+
6
+/**
7
+ * Get the tests passing.
8
+ */
9
+public class SwapTest {
10
+    @Test
11
+    public void testSwap() throws Exception {
12
+        Double[] result = Swap.swap(0,1, 1.5, 2.0,3.0);
13
+        Double[] expected = {2.0, 1.5, 3.0};
14
+        Assert.assertArrayEquals(expected, result);
15
+    }
16
+}
17
+
18
+

+ 50
- 50
src/test/java/TableNested/TableNestedTest.java Ver fichero

@@ -1,50 +1,50 @@
1
-//package TableNested;
2
-//
3
-//import org.junit.Assert;
4
-//import org.junit.Test;
5
-//
6
-//public class TableNestedTest {
7
-//    @Test
8
-//    public void testGetWithoutAnItemReturnsNull() throws Exception {
9
-//        // Given an empty table
10
-//        TableNested<String, Integer> table = new TableNested<String, Integer>();
11
-//        // When we try and get an item then it returns null
12
-//        Assert.assertEquals(table.get("foo"), null);
13
-//    }
14
-//
15
-//    @Test
16
-//    public void testPutAnItemReturnsAndDoesNotDelete() throws Exception {
17
-//        //Given an empty table
18
-//        TableNested<String, Integer> table = new TableNested<String, Integer>();
19
-//        // When we put an item in it
20
-//        table.put("foo", 1);
21
-//        // Then we should be able to get it's value
22
-//        Assert.assertEquals(table.get("foo"), new Integer(1));
23
-//        // And then we should be able to get it again as it wasn't removed
24
-//        Assert.assertEquals(table.get("foo"), new Integer(1));
25
-//    }
26
-//
27
-//    @Test
28
-//    public void testOverwritingAnItem() throws Exception {
29
-//        //Given an empty table
30
-//        TableNested<String, Integer> table = new TableNested<String, Integer>();
31
-//        // When we put an item in it
32
-//        table.put("foo", 1);
33
-//        // And we put a new value with the same key
34
-//        table.put("foo", 2);
35
-//        // Then we should get back the new value
36
-//        Assert.assertEquals(table.get("foo"), new Integer(2));
37
-//    }
38
-//
39
-//    @Test
40
-//    public void testRemoveAnItem() throws Exception {
41
-//        //Given an empty table
42
-//        TableNested<String, Integer> table = new TableNested<String, Integer>();
43
-//        // When we put an item in it
44
-//        table.put("foo", 1);
45
-//        // And we remove that item
46
-//        table.remove("foo");
47
-//        // Then we should get back null for that balue
48
-//        Assert.assertEquals(table.get("foo"), null);
49
-//    }
50
-//}
1
+package TableNested;
2
+
3
+import org.junit.Assert;
4
+import org.junit.Test;
5
+
6
+public class TableNestedTest {
7
+    @Test
8
+    public void testGetWithoutAnItemReturnsNull() throws Exception {
9
+        // Given an empty table
10
+        TableNested<String, Integer> table = new TableNested<String, Integer>();
11
+        // When we try and get an item then it returns null
12
+        Assert.assertEquals(table.get("foo"), null);
13
+    }
14
+
15
+    @Test
16
+    public void testPutAnItemReturnsAndDoesNotDelete() throws Exception {
17
+        //Given an empty table
18
+        TableNested<String, Integer> table = new TableNested<String, Integer>();
19
+        // When we put an item in it
20
+        table.put("foo", 1);
21
+        // Then we should be able to get it's value
22
+        Assert.assertEquals(table.get("foo"), new Integer(1));
23
+        // And then we should be able to get it again as it wasn't removed
24
+        Assert.assertEquals(table.get("foo"), new Integer(1));
25
+    }
26
+
27
+    @Test
28
+    public void testOverwritingAnItem() throws Exception {
29
+        //Given an empty table
30
+        TableNested<String, Integer> table = new TableNested<String, Integer>();
31
+        // When we put an item in it
32
+        table.put("foo", 1);
33
+        // And we put a new value with the same key
34
+        table.put("foo", 2);
35
+        // Then we should get back the new value
36
+        Assert.assertEquals(table.get("foo"), new Integer(2));
37
+    }
38
+
39
+    @Test
40
+    public void testRemoveAnItem() throws Exception {
41
+        //Given an empty table
42
+        TableNested<String, Integer> table = new TableNested<String, Integer>();
43
+        // When we put an item in it
44
+        table.put("foo", 1);
45
+        // And we remove that item
46
+        table.remove("foo");
47
+        // Then we should get back null for that balue
48
+        Assert.assertEquals(table.get("foo"), null);
49
+    }
50
+}