Procházet zdrojové kódy

Finished Part 1, will finish part 2 after the other Labs are complete if I have time

nmaidanos před 8 roky
rodič
revize
836fe5f918
2 změnil soubory, kde provedl 85 přidání a 87 odebrání
  1. 29
    31
      Inventory.java
  2. 56
    56
      package.bluej

+ 29
- 31
Inventory.java Zobrazit soubor

@@ -1,3 +1,5 @@
1
+import java.util.List;
2
+import java.util.Arrays;
1 3
 
2 4
 public class Inventory {
3 5
     private Item[] items;
@@ -10,44 +12,40 @@ public class Inventory {
10 12
     public void updateQuality() {
11 13
 
12 14
         for (Item item: items) {
13
-           
14
-            //This loop runs at the end of each day
15
-            //SellIn is the value which denotes the number of days we have to sell the item
16
-            //Quality value denotes how values for every item
17
-            
18 15
             if (item.getName().equals("Aged Brie")) {
19
-               
20
-                if (item.getQuality() < 50) {
21
-                    item.setQuality(item.getQuality() + 1);
22
-                }     
23
-                
24
-                if (item.getSellIn() < 0 && item.getQuality() < 50) {
25
-                        item.setQuality(item.getQuality() + 1);
26
-                }
27
-                
28
-            } else {
29
-                
30
-                if (item.getQuality() > 0) {
31
-                    if (!item.getName().equals("Sulfuras, Hand of Ragnaros")) {
32
-                        item.setQuality(item.getQuality() - 1);
33
-                    }
34
-                }
35
-            
36
-                if (item.getSellIn() < 0) {
37
-                  item.setQuality(item.getQuality() - 1);
38
-                }
39
-
40
-            }
41
-            
42
-            if (!item.getName().equals("Sulfuras, Hand of Ragnaros")) {
43
-                item.setSellIn(item.getSellIn() - 1);
16
+                setAgedBrie(item);
17
+            } else if(isNotLegenday(item)) {
18
+                setNoneLegendary(item);
44 19
             }
45 20
         }
46 21
         
47 22
     }
48 23
     
49 24
     private boolean isNotLegenday(Item item){
50
-        return item.getName().equals("Sulfuras, Hand of Ragnaros") ? true : false;
25
+    List<String> legendayItem = Arrays.asList
26
+    ("Sulfuras, Hand of Ragnaros");
27
+        return legendayItem.contains(item.getName()) ? false : true;
28
+    }
29
+    
30
+    private void setAgedBrie(Item item){
31
+        if (item.getQuality() < 50) {
32
+            item.setQuality(item.getQuality() + 1);
33
+        }     
34
+        if (item.getSellIn() < 0 && item.getQuality() < 50) {
35
+                item.setQuality(item.getQuality() + 1);
36
+        }        
37
+    }
38
+    
39
+    private void setNoneLegendary(Item item){
40
+        if (item.getQuality() > 0) {
41
+            item.setQuality(item.getQuality() - 1);
42
+        }
43
+        if (item.getSellIn() < 0) {
44
+          item.setQuality(item.getQuality() - 1);
45
+        }
46
+        
47
+        item.setSellIn(item.getSellIn() - 1);
51 48
     }
49
+    
52 50
    
53 51
 }

+ 56
- 56
package.bluej Zobrazit soubor

@@ -1,56 +1,56 @@
1
-#BlueJ package file
2
-dependency1.from=InventoryTest
3
-dependency1.to=Item
4
-dependency1.type=UsesDependency
5
-dependency2.from=InventoryTest
6
-dependency2.to=Inventory
7
-dependency2.type=UsesDependency
8
-dependency3.from=Inventory
9
-dependency3.to=Item
10
-dependency3.type=UsesDependency
11
-editor.fx.0.height=28
12
-editor.fx.0.width=160
13
-editor.fx.0.x=-32000
14
-editor.fx.0.y=-32000
15
-objectbench.height=151
16
-objectbench.width=934
17
-package.divider.horizontal=0.6
18
-package.divider.vertical=0.8331573389651531
19
-package.editor.height=782
20
-package.editor.width=844
21
-package.editor.x=953
22
-package.editor.y=0
23
-package.frame.height=1047
24
-package.frame.width=974
25
-package.numDependencies=3
26
-package.numTargets=3
27
-package.showExtends=true
28
-package.showUses=true
29
-project.charset=UTF-8
30
-readme.height=58
31
-readme.name=@README
32
-readme.width=47
33
-readme.x=10
34
-readme.y=10
35
-target1.height=50
36
-target1.name=Item
37
-target1.showInterface=false
38
-target1.type=ClassTarget
39
-target1.width=80
40
-target1.x=570
41
-target1.y=180
42
-target2.height=50
43
-target2.name=InventoryTest
44
-target2.showInterface=false
45
-target2.type=UnitTestTargetJunit4
46
-target2.width=80
47
-target2.x=570
48
-target2.y=240
49
-target3.association=InventoryTest
50
-target3.height=50
51
-target3.name=Inventory
52
-target3.showInterface=false
53
-target3.type=ClassTarget
54
-target3.width=80
55
-target3.x=540
56
-target3.y=270
1
+#BlueJ package file
2
+dependency1.from=InventoryTest
3
+dependency1.to=Item
4
+dependency1.type=UsesDependency
5
+dependency2.from=InventoryTest
6
+dependency2.to=Inventory
7
+dependency2.type=UsesDependency
8
+dependency3.from=Inventory
9
+dependency3.to=Item
10
+dependency3.type=UsesDependency
11
+editor.fx.0.height=1047
12
+editor.fx.0.width=989
13
+editor.fx.0.x=938
14
+editor.fx.0.y=0
15
+objectbench.height=151
16
+objectbench.width=375
17
+package.divider.horizontal=0.6643478260869565
18
+package.divider.vertical=0.7193605683836589
19
+package.editor.height=385
20
+package.editor.width=481
21
+package.editor.x=285
22
+package.editor.y=165
23
+package.frame.height=663
24
+package.frame.width=611
25
+package.numDependencies=3
26
+package.numTargets=3
27
+package.showExtends=true
28
+package.showUses=true
29
+project.charset=UTF-8
30
+readme.height=58
31
+readme.name=@README
32
+readme.width=47
33
+readme.x=10
34
+readme.y=10
35
+target1.height=50
36
+target1.name=Item
37
+target1.showInterface=false
38
+target1.type=ClassTarget
39
+target1.width=80
40
+target1.x=570
41
+target1.y=180
42
+target2.height=50
43
+target2.name=InventoryTest
44
+target2.showInterface=false
45
+target2.type=UnitTestTargetJunit4
46
+target2.width=80
47
+target2.x=570
48
+target2.y=240
49
+target3.association=InventoryTest
50
+target3.height=50
51
+target3.name=Inventory
52
+target3.showInterface=false
53
+target3.type=ClassTarget
54
+target3.width=80
55
+target3.x=540
56
+target3.y=270