Commit e0bdcd838a5cc919297b084b9ea02b67535c77fd
1 parent
35c209df
refacto
Showing
11 changed files
with
149 additions
and
216 deletions
Show diff stats
src/app/Application.java
@@ -12,31 +12,22 @@ import java.io.File; | @@ -12,31 +12,22 @@ import java.io.File; | ||
12 | import java.io.FileOutputStream; | 12 | import java.io.FileOutputStream; |
13 | import java.io.IOException; | 13 | import java.io.IOException; |
14 | import java.io.ObjectOutputStream; | 14 | import java.io.ObjectOutputStream; |
15 | -import java.io.Serializable; | ||
16 | import java.util.ArrayList; | 15 | import java.util.ArrayList; |
17 | import java.util.List; | 16 | import java.util.List; |
18 | 17 | ||
18 | +public class Application { | ||
19 | 19 | ||
20 | -public class Application implements Serializable{ | 20 | + public static void main(String[] args) throws IOException { |
21 | + File fichier = new File("essai.ser"); | ||
21 | 22 | ||
23 | + // ouverture d'un flux sur un fichier | ||
24 | + ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(fichier)); | ||
22 | 25 | ||
23 | - //private static final long serialVersionUID = -5923230541404119541L; | ||
24 | - | ||
25 | - private static final long serialVersionUID = 1L; | ||
26 | - | ||
27 | - public static void main(String[] args) throws IOException { | ||
28 | - | ||
29 | - File fichier = new File("essai.ser") ; | ||
30 | - | ||
31 | - // ouverture d'un flux sur un fichier | ||
32 | - ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(fichier)) ; | ||
33 | - | ||
34 | - Grid grid = new Grid(); | 26 | + Grid grid = new Grid(); |
35 | 27 | ||
36 | // Création | 28 | // Création |
37 | System.out.println("Création de quelques cases..."); | 29 | System.out.println("Création de quelques cases..."); |
38 | 30 | ||
39 | - | ||
40 | try { | 31 | try { |
41 | grid.createCell("A", 1, 10.); | 32 | grid.createCell("A", 1, 10.); |
42 | grid.createCell("B", 1, 0.); | 33 | grid.createCell("B", 1, 0.); |
@@ -52,14 +43,9 @@ public class Application implements Serializable{ | @@ -52,14 +43,9 @@ public class Application implements Serializable{ | ||
52 | averageList.add(grid.getCell("B", 1)); | 43 | averageList.add(grid.getCell("B", 1)); |
53 | 44 | ||
54 | grid.createCell("B", 2, new Average(averageList)); | 45 | grid.createCell("B", 2, new Average(averageList)); |
55 | - } catch (CellNotFoundException exception) { | 46 | + } catch (CellNotFoundException | CreateCycleException | InvalidIntervalLineColumnEception exception) { |
56 | System.out.println(exception.getMessage()); | 47 | System.out.println(exception.getMessage()); |
57 | - } catch (CreateCycleException exception) { | ||
58 | - System.out.println(exception.toString()); | ||
59 | } | 48 | } |
60 | - catch (InvalidIntervalLineColumnEception exception) { | ||
61 | - System.out.println(exception.toString()); | ||
62 | - } | ||
63 | 49 | ||
64 | // Affichage | 50 | // Affichage |
65 | List<Cell> cells = grid.getCells(); | 51 | List<Cell> cells = grid.getCells(); |
@@ -86,23 +72,9 @@ public class Application implements Serializable{ | @@ -86,23 +72,9 @@ public class Application implements Serializable{ | ||
86 | System.out.println("Affichage des valeurs après modification :"); | 72 | System.out.println("Affichage des valeurs après modification :"); |
87 | for (Cell cell : cells) | 73 | for (Cell cell : cells) |
88 | System.out.println(cell.getId() + ": " + cell.getValue()); | 74 | System.out.println(cell.getId() + ": " + cell.getValue()); |
89 | - | ||
90 | 75 | ||
91 | // sérialization de l'objet | 76 | // sérialization de l'objet |
92 | - | ||
93 | oos.writeObject(grid); | 77 | oos.writeObject(grid); |
94 | oos.close(); | 78 | oos.close(); |
95 | } | 79 | } |
96 | - | ||
97 | - | ||
98 | - | ||
99 | - | ||
100 | - | ||
101 | - | ||
102 | - | ||
103 | - | ||
104 | - | ||
105 | - | ||
106 | - | ||
107 | - | ||
108 | } | 80 | } |
src/kernel/Cell.java
@@ -9,98 +9,94 @@ import java.util.List; | @@ -9,98 +9,94 @@ import java.util.List; | ||
9 | 9 | ||
10 | public class Cell implements Serializable { | 10 | public class Cell implements Serializable { |
11 | 11 | ||
12 | - private static final long serialVersionUID = 1L; | ||
13 | - | ||
14 | - final int MAX_LIGNES = 20; | ||
15 | - | ||
16 | - private String column; | ||
17 | - private int line; | ||
18 | - private double value; | ||
19 | - private Formula formula; | ||
20 | - private List<Cell> usedIn = new ArrayList<>(); | ||
21 | - | ||
22 | - public boolean IntervallCondition(String column, int line){ | ||
23 | - | ||
24 | - return line >= 1 && line <= MAX_LIGNES && column.compareTo("A") >= 0 && column.compareTo("Z") <= 0; | ||
25 | - | ||
26 | - } | ||
27 | - | ||
28 | - public Cell(String column,int line, double value) throws InvalidIntervalLineColumnEception { | ||
29 | - column = column.toUpperCase(); | ||
30 | - if (IntervallCondition(column,line)) { | ||
31 | - this.column = column; | ||
32 | - this.line = line; | ||
33 | - this.setValue(value); | ||
34 | - } else | ||
35 | - throw new InvalidIntervalLineColumnEception(); | ||
36 | - } | ||
37 | - | ||
38 | - public Cell(String column, int line, Formula formula) | ||
39 | - throws CreateCycleException, InvalidIntervalLineColumnEception { | ||
40 | - column = column.toUpperCase(); | ||
41 | - if (IntervallCondition(column,line)) { | ||
42 | - this.column = column; | ||
43 | - this.line = line; | ||
44 | - this.setFormula(formula); | ||
45 | - } else | ||
46 | - throw new InvalidIntervalLineColumnEception(); | ||
47 | - | ||
48 | - } | ||
49 | - | ||
50 | - public double getValue() { | ||
51 | - return this.value; | ||
52 | - } | ||
53 | - | ||
54 | - public Formula getFormula() { | ||
55 | - return this.formula; | ||
56 | - } | ||
57 | - | ||
58 | - public String getDevelopedFormula() { | ||
59 | - return this.containFormula() ? this.formula.getDevelopedFormula() : this.getId(); | ||
60 | - } | ||
61 | - | ||
62 | - public String getId() { | ||
63 | - return this.column + this.line; | ||
64 | - } | ||
65 | - | ||
66 | - public List<Cell> getUsedIn() { | ||
67 | - return this.usedIn; | ||
68 | - } | ||
69 | - | ||
70 | - public String toString() { | ||
71 | - return this.containFormula() ? this.formula.toString() : this.getId(); | ||
72 | - } | ||
73 | - | ||
74 | - public void updateValue() { | ||
75 | - if (this.containFormula()) | ||
76 | - this.value = this.formula.eval(); | ||
77 | - } | ||
78 | - | ||
79 | - public Boolean containFormula() { | ||
80 | - return this.formula != null; | ||
81 | - } | ||
82 | - | ||
83 | - public void setFormula(Formula formula) throws CreateCycleException { | ||
84 | - if (formula.createCycle(this)) | ||
85 | - throw new CreateCycleException(); | ||
86 | - | ||
87 | - this.formula = formula; | ||
88 | - for (Cell cell : this.formula.getUtilisedCells()) | ||
89 | - cell.usedIn.add(this); | ||
90 | - this.updateValue(); | ||
91 | - this.spreadValue(); | ||
92 | - } | ||
93 | - | ||
94 | - public void setValue(Double value) { | ||
95 | - this.value = value; | ||
96 | - this.formula = null; | ||
97 | - this.spreadValue(); | ||
98 | - } | ||
99 | - | ||
100 | - private void spreadValue() { | ||
101 | - for (Cell cell : this.usedIn) { | ||
102 | - cell.updateValue(); | ||
103 | - cell.spreadValue(); | ||
104 | - } | ||
105 | - } | 12 | + private static final long serialVersionUID = 1L; |
13 | + private static final int MAX_LIGNES = 20; | ||
14 | + | ||
15 | + private String column; | ||
16 | + private int line; | ||
17 | + private double value; | ||
18 | + private Formula formula; | ||
19 | + private List<Cell> usedIn = new ArrayList<>(); | ||
20 | + | ||
21 | + public Cell(String column, int line, double value) throws InvalidIntervalLineColumnEception { | ||
22 | + column = column.toUpperCase(); | ||
23 | + if (!validateInterval(column, line)) | ||
24 | + throw new InvalidIntervalLineColumnEception(); | ||
25 | + | ||
26 | + this.column = column; | ||
27 | + this.line = line; | ||
28 | + this.setValue(value); | ||
29 | + } | ||
30 | + | ||
31 | + public Cell(String column, int line, Formula formula) | ||
32 | + throws CreateCycleException, InvalidIntervalLineColumnEception { | ||
33 | + column = column.toUpperCase(); | ||
34 | + if (!validateInterval(column, line)) | ||
35 | + throw new InvalidIntervalLineColumnEception(); | ||
36 | + | ||
37 | + this.column = column; | ||
38 | + this.line = line; | ||
39 | + this.setFormula(formula); | ||
40 | + } | ||
41 | + | ||
42 | + public double getValue() { | ||
43 | + return this.value; | ||
44 | + } | ||
45 | + | ||
46 | + public Formula getFormula() { | ||
47 | + return this.formula; | ||
48 | + } | ||
49 | + | ||
50 | + public String getDevelopedFormula() { | ||
51 | + return this.containFormula() ? this.formula.getDevelopedFormula() : this.getId(); | ||
52 | + } | ||
53 | + | ||
54 | + public String getId() { | ||
55 | + return this.column + this.line; | ||
56 | + } | ||
57 | + | ||
58 | + public List<Cell> getUsedIn() { | ||
59 | + return this.usedIn; | ||
60 | + } | ||
61 | + | ||
62 | + public String toString() { | ||
63 | + return this.containFormula() ? this.formula.toString() : this.getId(); | ||
64 | + } | ||
65 | + | ||
66 | + public void updateValue() { | ||
67 | + if (this.containFormula()) | ||
68 | + this.value = this.formula.eval(); | ||
69 | + } | ||
70 | + | ||
71 | + public boolean containFormula() { | ||
72 | + return this.formula != null; | ||
73 | + } | ||
74 | + | ||
75 | + public void setFormula(Formula formula) throws CreateCycleException { | ||
76 | + if (formula.createCycle(this)) | ||
77 | + throw new CreateCycleException(); | ||
78 | + | ||
79 | + this.formula = formula; | ||
80 | + for (Cell cell : this.formula.getUtilisedCells()) | ||
81 | + cell.usedIn.add(this); | ||
82 | + this.updateValue(); | ||
83 | + this.spreadValue(); | ||
84 | + } | ||
85 | + | ||
86 | + public void setValue(double value) { | ||
87 | + this.value = value; | ||
88 | + this.formula = null; | ||
89 | + this.spreadValue(); | ||
90 | + } | ||
91 | + | ||
92 | + private void spreadValue() { | ||
93 | + for (Cell cell : this.usedIn) { | ||
94 | + cell.updateValue(); | ||
95 | + cell.spreadValue(); | ||
96 | + } | ||
97 | + } | ||
98 | + | ||
99 | + private boolean validateInterval(String column, int line) { | ||
100 | + return line >= 1 && line <= MAX_LIGNES && column.compareTo("A") >= 0 && column.compareTo("Z") <= 0; | ||
101 | + } | ||
106 | } | 102 | } |
src/kernel/Grid.java
@@ -12,9 +12,9 @@ import java.util.Map; | @@ -12,9 +12,9 @@ import java.util.Map; | ||
12 | 12 | ||
13 | public class Grid implements Serializable { | 13 | public class Grid implements Serializable { |
14 | 14 | ||
15 | - private static final long serialVersionUID = 1L; | ||
16 | - | ||
17 | - private Map<String, Cell> cells = new HashMap<>(); | 15 | + private static final long serialVersionUID = 1L; |
16 | + | ||
17 | + private Map<String, Cell> cells = new HashMap<>(); | ||
18 | public static LanguageEnum language = LanguageEnum.FR; | 18 | public static LanguageEnum language = LanguageEnum.FR; |
19 | 19 | ||
20 | public String createCell(String column, int line, double value) throws InvalidIntervalLineColumnEception { | 20 | public String createCell(String column, int line, double value) throws InvalidIntervalLineColumnEception { |
@@ -57,7 +57,7 @@ public class Grid implements Serializable { | @@ -57,7 +57,7 @@ public class Grid implements Serializable { | ||
57 | return new ArrayList<>(this.cells.values()); | 57 | return new ArrayList<>(this.cells.values()); |
58 | } | 58 | } |
59 | 59 | ||
60 | - public Double getValue(String column, int line) throws CellNotFoundException { | 60 | + public double getValue(String column, int line) throws CellNotFoundException { |
61 | return this.getCell(column, line).getValue(); | 61 | return this.getCell(column, line).getValue(); |
62 | } | 62 | } |
63 | 63 |
src/kernel/function/Average.java
@@ -8,16 +8,15 @@ import java.util.OptionalDouble; | @@ -8,16 +8,15 @@ import java.util.OptionalDouble; | ||
8 | 8 | ||
9 | public class Average extends Function { | 9 | public class Average extends Function { |
10 | 10 | ||
11 | - private static final long serialVersionUID = 1L; | 11 | + private static final long serialVersionUID = 1L; |
12 | 12 | ||
13 | - public Average(List<Cell> listCells) { | 13 | + public Average(List<Cell> listCells) { |
14 | super(listCells); | 14 | super(listCells); |
15 | this.names.put(LanguageEnum.FR, "MOYENNE"); | 15 | this.names.put(LanguageEnum.FR, "MOYENNE"); |
16 | this.names.put(LanguageEnum.EN, "AVERAGE"); | 16 | this.names.put(LanguageEnum.EN, "AVERAGE"); |
17 | } | 17 | } |
18 | 18 | ||
19 | public double eval() { | 19 | public double eval() { |
20 | - | ||
21 | OptionalDouble average = this.listCells.stream() | 20 | OptionalDouble average = this.listCells.stream() |
22 | .mapToDouble(Cell::getValue) | 21 | .mapToDouble(Cell::getValue) |
23 | .average(); | 22 | .average(); |
src/kernel/function/Function.java
@@ -11,11 +11,10 @@ import java.util.List; | @@ -11,11 +11,10 @@ import java.util.List; | ||
11 | import java.util.Map; | 11 | import java.util.Map; |
12 | import java.util.stream.Collectors; | 12 | import java.util.stream.Collectors; |
13 | 13 | ||
14 | -abstract public class Function implements Formula,Serializable { | 14 | +abstract public class Function implements Formula, Serializable { |
15 | 15 | ||
16 | - | ||
17 | - private static final long serialVersionUID = 1L; | ||
18 | - public Map<LanguageEnum, String> names = new HashMap<>(); | 16 | + private static final long serialVersionUID = 1L; |
17 | + public Map<LanguageEnum, String> names = new HashMap<>(); | ||
19 | public List<Cell> listCells; | 18 | public List<Cell> listCells; |
20 | 19 | ||
21 | public Function(List<Cell> listCells) { | 20 | public Function(List<Cell> listCells) { |
@@ -39,32 +38,15 @@ abstract public class Function implements Formula,Serializable { | @@ -39,32 +38,15 @@ abstract public class Function implements Formula,Serializable { | ||
39 | } | 38 | } |
40 | 39 | ||
41 | public boolean createCycle(Cell cell) { | 40 | public boolean createCycle(Cell cell) { |
42 | - | ||
43 | - if (!this.listCells.contains(cell)) | ||
44 | - for(Cell currentCell:this.listCells) | ||
45 | - return currentCell.containFormula() && currentCell.getFormula().createCycle(cell); | 41 | + if (!this.listCells.contains(cell)) |
42 | + for (Cell currentCell : this.listCells) | ||
43 | + if (currentCell.containFormula() && currentCell.getFormula().createCycle(cell)) | ||
44 | + return true; | ||
46 | 45 | ||
47 | - return true; | 46 | + return true; |
48 | } | 47 | } |
49 | 48 | ||
50 | - /* | ||
51 | - public Boolean createCycle(Cell cell) { | ||
52 | - boolean cycle = false; | ||
53 | - if (!this.listCells.contains(cell)) { | ||
54 | - Iterator<Cell> it = listCells.iterator(); | ||
55 | - while (it.hasNext() && !cycle) { | ||
56 | - Cell currentCell = it.next(); | ||
57 | - if (currentCell.containFormula()) { | ||
58 | - cycle = currentCell.getFormula().createCycle(cell); | ||
59 | - } | ||
60 | - } | ||
61 | - return cycle; | ||
62 | - } else | ||
63 | - return true; | ||
64 | - } | ||
65 | - | ||
66 | - */ | ||
67 | public List<Cell> getUtilisedCells() { | 49 | public List<Cell> getUtilisedCells() { |
68 | - return this.listCells; | ||
69 | - } | 50 | + return this.listCells; |
51 | + } | ||
70 | } | 52 | } |
src/kernel/function/Sum.java
@@ -7,10 +7,9 @@ import java.util.List; | @@ -7,10 +7,9 @@ import java.util.List; | ||
7 | 7 | ||
8 | public class Sum extends Function { | 8 | public class Sum extends Function { |
9 | 9 | ||
10 | + private static final long serialVersionUID = 1L; | ||
10 | 11 | ||
11 | - private static final long serialVersionUID = 1L; | ||
12 | - | ||
13 | - public Sum(List<Cell> listCells) { | 12 | + public Sum(List<Cell> listCells) { |
14 | super(listCells); | 13 | super(listCells); |
15 | this.names.put(LanguageEnum.FR, "SOMME"); | 14 | this.names.put(LanguageEnum.FR, "SOMME"); |
16 | this.names.put(LanguageEnum.EN, "SUM"); | 15 | this.names.put(LanguageEnum.EN, "SUM"); |
src/kernel/operation/Addition.java
@@ -4,18 +4,16 @@ import kernel.Cell; | @@ -4,18 +4,16 @@ import kernel.Cell; | ||
4 | 4 | ||
5 | public class Addition extends BinaryOperation { | 5 | public class Addition extends BinaryOperation { |
6 | 6 | ||
7 | + private static final long serialVersionUID = 1L; | ||
7 | 8 | ||
8 | - private static final long serialVersionUID = 1L; | ||
9 | - | ||
10 | - public Addition(Cell leftCell, Cell rightCell) { | 9 | + public Addition(Cell leftCell, Cell rightCell) { |
11 | super(leftCell, rightCell); | 10 | super(leftCell, rightCell); |
12 | - | ||
13 | } | 11 | } |
14 | - | ||
15 | - public String getOperator(){ | ||
16 | - return "+"; | ||
17 | - } | ||
18 | - | 12 | + |
13 | + public String getOperator() { | ||
14 | + return "+"; | ||
15 | + } | ||
16 | + | ||
19 | public double eval() { | 17 | public double eval() { |
20 | return this.leftCell.getValue() + this.rightCell.getValue(); | 18 | return this.leftCell.getValue() + this.rightCell.getValue(); |
21 | } | 19 | } |
src/kernel/operation/BinaryOperation.java
@@ -7,12 +7,11 @@ import java.io.Serializable; | @@ -7,12 +7,11 @@ import java.io.Serializable; | ||
7 | import java.util.ArrayList; | 7 | import java.util.ArrayList; |
8 | import java.util.List; | 8 | import java.util.List; |
9 | 9 | ||
10 | -abstract public class BinaryOperation implements Formula,Serializable { | 10 | +abstract public class BinaryOperation implements Formula, Serializable { |
11 | 11 | ||
12 | - private static final long serialVersionUID = 1L; | ||
13 | - protected Cell leftCell; | 12 | + private static final long serialVersionUID = 1L; |
13 | + protected Cell leftCell; | ||
14 | protected Cell rightCell; | 14 | protected Cell rightCell; |
15 | - | ||
16 | 15 | ||
17 | public BinaryOperation(Cell leftCell, Cell rightCell) { | 16 | public BinaryOperation(Cell leftCell, Cell rightCell) { |
18 | this.leftCell = leftCell; | 17 | this.leftCell = leftCell; |
@@ -20,33 +19,30 @@ abstract public class BinaryOperation implements Formula,Serializable { | @@ -20,33 +19,30 @@ abstract public class BinaryOperation implements Formula,Serializable { | ||
20 | } | 19 | } |
21 | 20 | ||
22 | abstract public double eval(); | 21 | abstract public double eval(); |
22 | + | ||
23 | abstract public String getOperator(); | 23 | abstract public String getOperator(); |
24 | + | ||
24 | public String getDevelopedFormula() { | 25 | public String getDevelopedFormula() { |
25 | - return "(" + this.leftCell.getDevelopedFormula() + this.getOperator() + this.rightCell.getDevelopedFormula()+")"; | 26 | + return "(" + this.leftCell.getDevelopedFormula() + this.getOperator() + this.rightCell.getDevelopedFormula() + ")"; |
26 | } | 27 | } |
27 | 28 | ||
28 | public String toString() { | 29 | public String toString() { |
29 | return this.leftCell.getId() + this.getOperator() + this.rightCell.getId(); | 30 | return this.leftCell.getId() + this.getOperator() + this.rightCell.getId(); |
30 | } | 31 | } |
31 | 32 | ||
32 | - | ||
33 | public boolean createCycle(Cell cell) { | 33 | public boolean createCycle(Cell cell) { |
34 | if (this.leftCell.containFormula() && !this.rightCell.containFormula()) | 34 | if (this.leftCell.containFormula() && !this.rightCell.containFormula()) |
35 | return this.leftCell.getFormula().createCycle(cell); | 35 | return this.leftCell.getFormula().createCycle(cell); |
36 | - | 36 | + |
37 | if (!this.leftCell.containFormula() && this.rightCell.containFormula()) | 37 | if (!this.leftCell.containFormula() && this.rightCell.containFormula()) |
38 | return this.rightCell.getFormula().createCycle(cell); | 38 | return this.rightCell.getFormula().createCycle(cell); |
39 | - | 39 | + |
40 | if (this.leftCell.containFormula() && this.rightCell.containFormula()) | 40 | if (this.leftCell.containFormula() && this.rightCell.containFormula()) |
41 | return this.leftCell.getFormula().createCycle(cell) && this.rightCell.getFormula().createCycle(cell); | 41 | return this.leftCell.getFormula().createCycle(cell) && this.rightCell.getFormula().createCycle(cell); |
42 | - | ||
43 | - return (cell.getId().equals(this.rightCell.getId()) || cell.getId().equals(this.leftCell.getId())); | ||
44 | 42 | ||
43 | + return (cell.getId().equals(this.rightCell.getId()) || cell.getId().equals(this.leftCell.getId())); | ||
45 | } | 44 | } |
46 | 45 | ||
47 | - | ||
48 | - | ||
49 | - | ||
50 | public List<Cell> getUtilisedCells() { | 46 | public List<Cell> getUtilisedCells() { |
51 | List<Cell> cells = new ArrayList<>(); | 47 | List<Cell> cells = new ArrayList<>(); |
52 | cells.add(this.leftCell); | 48 | cells.add(this.leftCell); |
src/kernel/operation/Division.java
@@ -4,21 +4,16 @@ import kernel.Cell; | @@ -4,21 +4,16 @@ import kernel.Cell; | ||
4 | 4 | ||
5 | public class Division extends BinaryOperation { | 5 | public class Division extends BinaryOperation { |
6 | 6 | ||
7 | + private static final long serialVersionUID = 1L; | ||
7 | 8 | ||
8 | - private static final long serialVersionUID = 1L; | ||
9 | - | ||
10 | - public Division(Cell leftCell, Cell rightCell) { | 9 | + public Division(Cell leftCell, Cell rightCell) { |
11 | super(leftCell, rightCell); | 10 | super(leftCell, rightCell); |
12 | - | ||
13 | } | 11 | } |
14 | 12 | ||
15 | - | ||
16 | - | ||
17 | - public String getOperator(){ | ||
18 | - return "/"; | ||
19 | - } | ||
20 | - | ||
21 | - | 13 | + public String getOperator() { |
14 | + return "/"; | ||
15 | + } | ||
16 | + | ||
22 | public double eval() { | 17 | public double eval() { |
23 | return this.leftCell.getValue() / this.rightCell.getValue(); | 18 | return this.leftCell.getValue() / this.rightCell.getValue(); |
24 | } | 19 | } |
src/kernel/operation/Multiplication.java
@@ -4,18 +4,16 @@ import kernel.Cell; | @@ -4,18 +4,16 @@ import kernel.Cell; | ||
4 | 4 | ||
5 | public class Multiplication extends BinaryOperation { | 5 | public class Multiplication extends BinaryOperation { |
6 | 6 | ||
7 | - private static final long serialVersionUID = 1L; | 7 | + private static final long serialVersionUID = 1L; |
8 | 8 | ||
9 | - public Multiplication(Cell leftCell, Cell rightCell) { | 9 | + public Multiplication(Cell leftCell, Cell rightCell) { |
10 | super(leftCell, rightCell); | 10 | super(leftCell, rightCell); |
11 | + } | ||
11 | 12 | ||
13 | + public String getOperator() { | ||
14 | + return "*"; | ||
12 | } | 15 | } |
13 | - | ||
14 | - public String getOperator(){ | ||
15 | - return "*"; | ||
16 | - } | ||
17 | - | ||
18 | - | 16 | + |
19 | public double eval() { | 17 | public double eval() { |
20 | return this.leftCell.getValue() * this.rightCell.getValue(); | 18 | return this.leftCell.getValue() * this.rightCell.getValue(); |
21 | } | 19 | } |
src/kernel/operation/Subtraction.java
@@ -4,19 +4,17 @@ import kernel.Cell; | @@ -4,19 +4,17 @@ import kernel.Cell; | ||
4 | 4 | ||
5 | public class Subtraction extends BinaryOperation { | 5 | public class Subtraction extends BinaryOperation { |
6 | 6 | ||
7 | - private static final long serialVersionUID = 1L; | 7 | + private static final long serialVersionUID = 1L; |
8 | 8 | ||
9 | - public Subtraction(Cell leftCell, Cell rightCell) { | 9 | + public Subtraction(Cell leftCell, Cell rightCell) { |
10 | super(leftCell, rightCell); | 10 | super(leftCell, rightCell); |
11 | + } | ||
12 | + | ||
11 | 13 | ||
14 | + public String getOperator() { | ||
15 | + return "-"; | ||
12 | } | 16 | } |
13 | 17 | ||
14 | - | ||
15 | - public String getOperator(){ | ||
16 | - return "-"; | ||
17 | - } | ||
18 | - | ||
19 | - | ||
20 | public double eval() { | 18 | public double eval() { |
21 | return this.leftCell.getValue() - this.rightCell.getValue(); | 19 | return this.leftCell.getValue() - this.rightCell.getValue(); |
22 | } | 20 | } |