diff --git a/.gradle/8.8/executionHistory/executionHistory.bin b/.gradle/8.8/executionHistory/executionHistory.bin index fa35c1eb18a4f98f221ed796f8659a7fe5daa222..7db84cf512cfbd6344621c3243526dc4cc2dc375 100644 Binary files a/.gradle/8.8/executionHistory/executionHistory.bin and b/.gradle/8.8/executionHistory/executionHistory.bin differ diff --git a/.gradle/8.8/executionHistory/executionHistory.lock b/.gradle/8.8/executionHistory/executionHistory.lock index db33ea1fd7c3174a2b9e2c4b764be7fb0d2a3dee..8dd60600587a381839406e5a67c47d9ee2a0037b 100644 Binary files a/.gradle/8.8/executionHistory/executionHistory.lock and b/.gradle/8.8/executionHistory/executionHistory.lock differ diff --git a/.gradle/8.8/fileHashes/fileHashes.bin b/.gradle/8.8/fileHashes/fileHashes.bin index ddac65beefa1ab7fcb5c3a44b431245ff0b02470..9b87dbd18e4735170e1a9941f3730342b9f27460 100644 Binary files a/.gradle/8.8/fileHashes/fileHashes.bin and b/.gradle/8.8/fileHashes/fileHashes.bin differ diff --git a/.gradle/8.8/fileHashes/fileHashes.lock b/.gradle/8.8/fileHashes/fileHashes.lock index f3cb0d8c873d1cd7a8e7f7e5340bbc04b426d09e..a2eea0623d496bfb6ed80c4b729a96fc4c16ab15 100644 Binary files a/.gradle/8.8/fileHashes/fileHashes.lock and b/.gradle/8.8/fileHashes/fileHashes.lock differ diff --git a/.gradle/8.8/fileHashes/resourceHashesCache.bin b/.gradle/8.8/fileHashes/resourceHashesCache.bin index f1816dbf4dc49178890d6a09e8dc1dc35abf5ddb..4a8cdfd724f87fdc16c3db8b31cb5c5b4cfb54b8 100644 Binary files a/.gradle/8.8/fileHashes/resourceHashesCache.bin and b/.gradle/8.8/fileHashes/resourceHashesCache.bin differ diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 8bb0f46bc417db6aa9df217dccf23f9f15f664d5..7006a23b212cd5dd50e65ec374cff0e9fee33061 100644 Binary files a/.gradle/buildOutputCleanup/buildOutputCleanup.lock and b/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/.gradle/file-system.probe b/.gradle/file-system.probe index 634d7f4f938fbd50afa1813d5f19ad70832c5e71..a3e12595537c4c25dbeda35b32cd55e1914cc4df 100644 Binary files a/.gradle/file-system.probe and b/.gradle/file-system.probe differ diff --git a/build/classes/java/main/SimulatorApplication.class b/build/classes/java/main/SimulatorApplication.class index 75fd7f257f694cb74372cc8dcff547d46f9acfb5..d3e7e6501fdcde716363cd6017444d3fbf0f8365 100644 Binary files a/build/classes/java/main/SimulatorApplication.class and b/build/classes/java/main/SimulatorApplication.class differ diff --git a/build/classes/java/main/controller/Controller.class b/build/classes/java/main/controller/Controller.class index 1d24f5e49304d4651517c9f6a98619faee8e706f..50f1985db624e6ed3e6c54909068cafcdc7632b2 100644 Binary files a/build/classes/java/main/controller/Controller.class and b/build/classes/java/main/controller/Controller.class differ diff --git a/build/classes/java/main/controller/PersistentToggleGroup.class b/build/classes/java/main/controller/PersistentToggleGroup.class index c0ccdd01abe3a42a581528ab9898584f819a2f12..c628d6aee41898dcc4426423e5c33466a8821e27 100644 Binary files a/build/classes/java/main/controller/PersistentToggleGroup.class and b/build/classes/java/main/controller/PersistentToggleGroup.class differ diff --git a/build/classes/java/main/controller/Simulation.class b/build/classes/java/main/controller/Simulation.class index 99050b0840eb144a4a29cac34e09d3d6e03ea560..3fe4f4ce2663af0228448feb83542f1d2358875b 100644 Binary files a/build/classes/java/main/controller/Simulation.class and b/build/classes/java/main/controller/Simulation.class differ diff --git a/build/classes/java/main/matrix/ConstantMatrixInitializer.class b/build/classes/java/main/matrix/ConstantMatrixInitializer.class index dbfb570ad41968cd3d1de1887b287ef9bb481d2d..2f16ea4c75ab73551466ffcc6ea2bc92abdcd589 100644 Binary files a/build/classes/java/main/matrix/ConstantMatrixInitializer.class and b/build/classes/java/main/matrix/ConstantMatrixInitializer.class differ diff --git a/build/classes/java/main/matrix/Coordinate.class b/build/classes/java/main/matrix/Coordinate.class index b058d4d4552bf2d60d562577be08b786552bf8d8..59d565bbb1bf7099365cccd3570443e9e0bb1688 100644 Binary files a/build/classes/java/main/matrix/Coordinate.class and b/build/classes/java/main/matrix/Coordinate.class differ diff --git a/build/classes/java/main/matrix/CoordinateIterator.class b/build/classes/java/main/matrix/CoordinateIterator.class index b4474f14429e175bd7e8ae1db3b004535e7e16fc..b78510c25a69a61a846d813c6674ded77e52f0a7 100644 Binary files a/build/classes/java/main/matrix/CoordinateIterator.class and b/build/classes/java/main/matrix/CoordinateIterator.class differ diff --git a/build/classes/java/main/matrix/ListMatrix.class b/build/classes/java/main/matrix/ListMatrix.class index 440bfa8caa12668dd9b18b1f5709cd4d21226661..de7394d23c81a6d916b2aaea41ba2448529805bb 100644 Binary files a/build/classes/java/main/matrix/ListMatrix.class and b/build/classes/java/main/matrix/ListMatrix.class differ diff --git a/build/classes/java/main/matrix/Matrix.class b/build/classes/java/main/matrix/Matrix.class index 22eb59f4782d59fa4799727546314e01498d8629..19d764354d8b419924fd129c6f18920c18920517 100644 Binary files a/build/classes/java/main/matrix/Matrix.class and b/build/classes/java/main/matrix/Matrix.class differ diff --git a/build/classes/java/main/matrix/MatrixInitializer.class b/build/classes/java/main/matrix/MatrixInitializer.class index 13704b631e961c3106d366f90a28b1d8338a6ba2..9bc1c897ff3cddf97bb07832e4fde607b397cfa9 100644 Binary files a/build/classes/java/main/matrix/MatrixInitializer.class and b/build/classes/java/main/matrix/MatrixInitializer.class differ diff --git a/build/classes/java/main/matrix/MatrixIterator.class b/build/classes/java/main/matrix/MatrixIterator.class index e38b2c1d6c455ec498d36936bbacc66f42d61431..1c1d116d29e6152d3c9fd224885ac802b81ee476 100644 Binary files a/build/classes/java/main/matrix/MatrixIterator.class and b/build/classes/java/main/matrix/MatrixIterator.class differ diff --git a/build/classes/java/main/model/Cell.class b/build/classes/java/main/model/Cell.class index 078a4176e34e14673012b593f8350fadf7a760d2..d09c8ecdfcbaa06e6fe470f77822326f2a5e571b 100644 Binary files a/build/classes/java/main/model/Cell.class and b/build/classes/java/main/model/Cell.class differ diff --git a/build/classes/java/main/model/CellularAutomaton.class b/build/classes/java/main/model/CellularAutomaton.class index e0423deb6bbd1f5fc614f556b4017895a50331cc..1a0ed666b87c50677a7f121d1a97229e1e05925c 100644 Binary files a/build/classes/java/main/model/CellularAutomaton.class and b/build/classes/java/main/model/CellularAutomaton.class differ diff --git a/build/classes/java/main/model/CellularAutomatonSimulation.class b/build/classes/java/main/model/CellularAutomatonSimulation.class index 28f441ca87e3830ef05866616d5278961cb240a5..666eee34be1ba6a3882b4a01d6f8c4b665a305ca 100644 Binary files a/build/classes/java/main/model/CellularAutomatonSimulation.class and b/build/classes/java/main/model/CellularAutomatonSimulation.class differ diff --git a/build/classes/java/main/model/ConstantCellInitializer.class b/build/classes/java/main/model/ConstantCellInitializer.class index b4cee6eb41e43d303236da1aa2cc89c598ff6795..603836f0726f5e36360c4e9845e56ce22da0e958 100644 Binary files a/build/classes/java/main/model/ConstantCellInitializer.class and b/build/classes/java/main/model/ConstantCellInitializer.class differ diff --git a/build/classes/java/main/model/Lens.class b/build/classes/java/main/model/Lens.class index e0e7e26472d50a2660577c557c975e46f2f77c70..5e9d95cc244edd60efa438fc9854d67ed089627a 100644 Binary files a/build/classes/java/main/model/Lens.class and b/build/classes/java/main/model/Lens.class differ diff --git a/build/classes/java/main/model/NextGenerationInitializer.class b/build/classes/java/main/model/NextGenerationInitializer.class index 51521ffd32a0046c74f1eddf3aca0924cbcc55a7..80c0fcd224a6291ccca3999b938dd923af0c1789 100644 Binary files a/build/classes/java/main/model/NextGenerationInitializer.class and b/build/classes/java/main/model/NextGenerationInitializer.class differ diff --git a/build/classes/java/main/model/OnChangeListener.class b/build/classes/java/main/model/OnChangeListener.class index 05924558e4751df0ee7d2587240d296e1b1060ec..80bddead8147f21fde0097004c22150a415d0e0f 100644 Binary files a/build/classes/java/main/model/OnChangeListener.class and b/build/classes/java/main/model/OnChangeListener.class differ diff --git a/build/classes/java/main/model/State.class b/build/classes/java/main/model/State.class index b7c76e03a910080e9f8e4815d4f20b88346b1097..adf228847c862eb8f9b88eb02acb9e3803a2ac07 100644 Binary files a/build/classes/java/main/model/State.class and b/build/classes/java/main/model/State.class differ diff --git a/build/classes/java/main/model/automata/GameOfLifeAutomaton.class b/build/classes/java/main/model/automata/GameOfLifeAutomaton.class index 5d1c0aebe6f3de0e551e4d4828afa5f7b3897e92..6bd36f42deaaa9459be2cbcbd62ab2e47a4d957e 100644 Binary files a/build/classes/java/main/model/automata/GameOfLifeAutomaton.class and b/build/classes/java/main/model/automata/GameOfLifeAutomaton.class differ diff --git a/build/classes/java/main/model/automata/GameOfLifeState.class b/build/classes/java/main/model/automata/GameOfLifeState.class index b3a87374692bcd4b8207a000bc7cfa23c62d85fe..496f137cfbed7d0264a6ca2f99b74a1b97c92542 100644 Binary files a/build/classes/java/main/model/automata/GameOfLifeState.class and b/build/classes/java/main/model/automata/GameOfLifeState.class differ diff --git a/build/classes/java/main/view/FillingMouseListener.class b/build/classes/java/main/view/FillingMouseListener.class index 591c5a91de905231d9d4015bb17a2ac9fc4dd7e4..f32cd2081452de736b6e7e0a39b46d383c6adc1a 100644 Binary files a/build/classes/java/main/view/FillingMouseListener.class and b/build/classes/java/main/view/FillingMouseListener.class differ diff --git a/build/classes/java/main/view/MatrixPane.class b/build/classes/java/main/view/MatrixPane.class index d9f62f085e54ebfeade6227714692731154c4c01..4f8dc71a4e4214025952869039c4ca01b0b2c332 100644 Binary files a/build/classes/java/main/view/MatrixPane.class and b/build/classes/java/main/view/MatrixPane.class differ diff --git a/build/classes/java/main/view/MouseListener.class b/build/classes/java/main/view/MouseListener.class index 61a64b0064a5c3170d2e0f7a6389ed7a15be7350..6b6d3e981db48c494c78210023e7835f77ee7672 100644 Binary files a/build/classes/java/main/view/MouseListener.class and b/build/classes/java/main/view/MouseListener.class differ diff --git a/build/classes/java/main/view/WaitingMouseListener.class b/build/classes/java/main/view/WaitingMouseListener.class index 5991560323e72bd7e913304f66d7888f14a286c3..76deffb5e152a59097e32fbacf40b1b072abf481 100644 Binary files a/build/classes/java/main/view/WaitingMouseListener.class and b/build/classes/java/main/view/WaitingMouseListener.class differ diff --git a/build/classes/java/test/matrix/ConstantMatrixInitializerTest.class b/build/classes/java/test/matrix/ConstantMatrixInitializerTest.class index e6769c0ae5cddb83c36ada7f2d6b749df7938609..cde4b6594d2a1ff59ef83f819d769bcea647ca47 100644 Binary files a/build/classes/java/test/matrix/ConstantMatrixInitializerTest.class and b/build/classes/java/test/matrix/ConstantMatrixInitializerTest.class differ diff --git a/build/classes/java/test/matrix/CoordinateIteratorTest.class b/build/classes/java/test/matrix/CoordinateIteratorTest.class index be9900b00e42d0af30b47934dc84084e19178df0..8791c1e9c06d3c6463574719105c2d4a9e08de29 100644 Binary files a/build/classes/java/test/matrix/CoordinateIteratorTest.class and b/build/classes/java/test/matrix/CoordinateIteratorTest.class differ diff --git a/build/classes/java/test/matrix/CoordinateTest.class b/build/classes/java/test/matrix/CoordinateTest.class index ee7f644af9a83317e8924317f5409a95d06b032d..50d43b473339ccb76b099dadfb3883f16fa79713 100644 Binary files a/build/classes/java/test/matrix/CoordinateTest.class and b/build/classes/java/test/matrix/CoordinateTest.class differ diff --git a/build/classes/java/test/matrix/ListMatrixTest.class b/build/classes/java/test/matrix/ListMatrixTest.class index beb794540a12d2af95bd5e271e2c38f50e9c416e..40a8c0c74fdc4d7c6ae6a9740afabb180109cbc4 100644 Binary files a/build/classes/java/test/matrix/ListMatrixTest.class and b/build/classes/java/test/matrix/ListMatrixTest.class differ diff --git a/build/classes/java/test/model/CellTest$Change.class b/build/classes/java/test/model/CellTest$Change.class index 6b6b7611dca2d207c63a5a951c5021011b75ccad..52af37a3ac9ee8791555d88b98756cf78d328398 100644 Binary files a/build/classes/java/test/model/CellTest$Change.class and b/build/classes/java/test/model/CellTest$Change.class differ diff --git a/build/classes/java/test/model/CellTest$MockListener.class b/build/classes/java/test/model/CellTest$MockListener.class index aadba9b3c339283d930612e0b4492a48a4358595..34d293dad5a0f8f4ae7c57c21db09774029697cd 100644 Binary files a/build/classes/java/test/model/CellTest$MockListener.class and b/build/classes/java/test/model/CellTest$MockListener.class differ diff --git a/build/classes/java/test/model/CellTest.class b/build/classes/java/test/model/CellTest.class index f4ab89d55a2ce1847a88232fbca8c862a8a0ec3e..d52a7cc15379b9b186b51356f0a802a69c0cf489 100644 Binary files a/build/classes/java/test/model/CellTest.class and b/build/classes/java/test/model/CellTest.class differ diff --git a/build/classes/java/test/model/CellularAutomatonSimulationTest.class b/build/classes/java/test/model/CellularAutomatonSimulationTest.class index 04144cd83933d5a2b64984a8ad33edf7ef3fe904..3dc3e8333d0ef9449ab895c39eb6aa4b39acc3c9 100644 Binary files a/build/classes/java/test/model/CellularAutomatonSimulationTest.class and b/build/classes/java/test/model/CellularAutomatonSimulationTest.class differ diff --git a/build/classes/java/test/model/NextGenerationInitializerTest.class b/build/classes/java/test/model/NextGenerationInitializerTest.class index 850f2fe85971a90d1c62567c167951c6d9cccace..2e7d38fee51e70409a33d1548ec57fd3a51570dc 100644 Binary files a/build/classes/java/test/model/NextGenerationInitializerTest.class and b/build/classes/java/test/model/NextGenerationInitializerTest.class differ diff --git a/build/classes/java/test/model/StateTest.class b/build/classes/java/test/model/StateTest.class index 57cc649808f0b322b304730c4b6c11e1aeb400cc..91e24f71a10f561905d1de2341cbe13c857fd11c 100644 Binary files a/build/classes/java/test/model/StateTest.class and b/build/classes/java/test/model/StateTest.class differ diff --git a/build/classes/java/test/model/automata/GameOfLifeStateTest.class b/build/classes/java/test/model/automata/GameOfLifeStateTest.class index de2803b3298d6a110b0a4f5f7373c690c0eb28bc..e06eff8f2660041a36cf720e528bcbabe7ee5edb 100644 Binary files a/build/classes/java/test/model/automata/GameOfLifeStateTest.class and b/build/classes/java/test/model/automata/GameOfLifeStateTest.class differ diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/CellularAutomaton.class.uniqueId6 b/build/tmp/compileJava/compileTransaction/stash-dir/CellularAutomaton.class.uniqueId6 new file mode 100644 index 0000000000000000000000000000000000000000..1a0ed666b87c50677a7f121d1a97229e1e05925c Binary files /dev/null and b/build/tmp/compileJava/compileTransaction/stash-dir/CellularAutomaton.class.uniqueId6 differ diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/CellularAutomatonSimulation.class.uniqueId1 b/build/tmp/compileJava/compileTransaction/stash-dir/CellularAutomatonSimulation.class.uniqueId1 new file mode 100644 index 0000000000000000000000000000000000000000..666eee34be1ba6a3882b4a01d6f8c4b665a305ca Binary files /dev/null and b/build/tmp/compileJava/compileTransaction/stash-dir/CellularAutomatonSimulation.class.uniqueId1 differ diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/CoordinateIterator.class.uniqueId1 b/build/tmp/compileJava/compileTransaction/stash-dir/CoordinateIterator.class.uniqueId1 deleted file mode 100644 index 510e71e03735dfe566c742ba4e40ab0aeb46fdc9..0000000000000000000000000000000000000000 Binary files a/build/tmp/compileJava/compileTransaction/stash-dir/CoordinateIterator.class.uniqueId1 and /dev/null differ diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/GameOfLifeAutomaton.class.uniqueId4 b/build/tmp/compileJava/compileTransaction/stash-dir/GameOfLifeAutomaton.class.uniqueId4 new file mode 100644 index 0000000000000000000000000000000000000000..6bd36f42deaaa9459be2cbcbd62ab2e47a4d957e Binary files /dev/null and b/build/tmp/compileJava/compileTransaction/stash-dir/GameOfLifeAutomaton.class.uniqueId4 differ diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/GameOfLifeState.class.uniqueId2 b/build/tmp/compileJava/compileTransaction/stash-dir/GameOfLifeState.class.uniqueId2 new file mode 100644 index 0000000000000000000000000000000000000000..496f137cfbed7d0264a6ca2f99b74a1b97c92542 Binary files /dev/null and b/build/tmp/compileJava/compileTransaction/stash-dir/GameOfLifeState.class.uniqueId2 differ diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/Matrix.class.uniqueId0 b/build/tmp/compileJava/compileTransaction/stash-dir/Matrix.class.uniqueId0 deleted file mode 100644 index 22eb59f4782d59fa4799727546314e01498d8629..0000000000000000000000000000000000000000 Binary files a/build/tmp/compileJava/compileTransaction/stash-dir/Matrix.class.uniqueId0 and /dev/null differ diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/NextGenerationInitializer.class.uniqueId0 b/build/tmp/compileJava/compileTransaction/stash-dir/NextGenerationInitializer.class.uniqueId0 new file mode 100644 index 0000000000000000000000000000000000000000..80c0fcd224a6291ccca3999b938dd923af0c1789 Binary files /dev/null and b/build/tmp/compileJava/compileTransaction/stash-dir/NextGenerationInitializer.class.uniqueId0 differ diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/SimulatorApplication.class.uniqueId3 b/build/tmp/compileJava/compileTransaction/stash-dir/SimulatorApplication.class.uniqueId3 new file mode 100644 index 0000000000000000000000000000000000000000..d3e7e6501fdcde716363cd6017444d3fbf0f8365 Binary files /dev/null and b/build/tmp/compileJava/compileTransaction/stash-dir/SimulatorApplication.class.uniqueId3 differ diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/State.class.uniqueId5 b/build/tmp/compileJava/compileTransaction/stash-dir/State.class.uniqueId5 new file mode 100644 index 0000000000000000000000000000000000000000..677d2231efee89f0afb0f0481ed6ebed3e15b342 Binary files /dev/null and b/build/tmp/compileJava/compileTransaction/stash-dir/State.class.uniqueId5 differ diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin index a0c72fc96d493d57160b9feb7e96516cfe9701c9..f076e28112b339596eb66b4b6b5e899995e7d843 100644 Binary files a/build/tmp/compileJava/previous-compilation-data.bin and b/build/tmp/compileJava/previous-compilation-data.bin differ diff --git a/build/tmp/compileTestJava/compileTransaction/stash-dir/ConstantMatrixInitializerTest.class.uniqueId0 b/build/tmp/compileTestJava/compileTransaction/stash-dir/ConstantMatrixInitializerTest.class.uniqueId0 new file mode 100644 index 0000000000000000000000000000000000000000..cde4b6594d2a1ff59ef83f819d769bcea647ca47 Binary files /dev/null and b/build/tmp/compileTestJava/compileTransaction/stash-dir/ConstantMatrixInitializerTest.class.uniqueId0 differ diff --git a/build/tmp/compileTestJava/compileTransaction/stash-dir/ListMatrixTest.class.uniqueId1 b/build/tmp/compileTestJava/compileTransaction/stash-dir/ListMatrixTest.class.uniqueId1 new file mode 100644 index 0000000000000000000000000000000000000000..40a8c0c74fdc4d7c6ae6a9740afabb180109cbc4 Binary files /dev/null and b/build/tmp/compileTestJava/compileTransaction/stash-dir/ListMatrixTest.class.uniqueId1 differ diff --git a/build/tmp/compileTestJava/previous-compilation-data.bin b/build/tmp/compileTestJava/previous-compilation-data.bin index f1fec0a7b86514b5e2e3417b6be2a3aa0b00f17f..b847dc1883fd5ce455c9a72ff49f46a7bcf1bafb 100644 Binary files a/build/tmp/compileTestJava/previous-compilation-data.bin and b/build/tmp/compileTestJava/previous-compilation-data.bin differ diff --git a/src/main/java/matrix/ListMatrix.java b/src/main/java/matrix/ListMatrix.java index a3a4e7d562c43dded22737a89919f85f5eca6040..1d29478029be47d2e2757a67f4aea57cbd8e457e 100644 --- a/src/main/java/matrix/ListMatrix.java +++ b/src/main/java/matrix/ListMatrix.java @@ -1,5 +1,6 @@ package matrix; +import java.util.ArrayList; import java.util.List; @@ -23,41 +24,47 @@ public class ListMatrix<T> implements Matrix<T> { * @param initializer A matrix initializer to set values in the {@link ListMatrix}. */ public ListMatrix(int width, int height, MatrixInitializer<T> initializer) { - // TODO - this.width = 0; - this.height = 0; - this.matrix = null; - this.initializeWith(initializer); // fills the matrix using initializer + this.width = width; + this.height = height; + this.matrix = new ArrayList<>(width); + // fills the matrix using initializer + for(int x =0;x<width;x++){ + List<T> row = new ArrayList<>(height); + for(int y = 0;y<height;y++){ + row.add(initializer.initialValueAt(new Coordinate(x,y))); + } + matrix.add(row); + } } public ListMatrix(int width, int height, T constant) { - this(width, height, new ConstantMatrixInitializer<>(constant)); - } - - private void initializeWith(MatrixInitializer<T> initializer) { - // TODO initialize each cell of the matrix, with a value determined by initializer + this(width, height, coord->constant); } public int width() { - // TODO - return 0; + return width; } public int height() { - // TODO - return 0; + return height; } @Override public T get(int x, int y) { - // TODO - return null; + checkBounds(x,y); + return matrix.get(y).get(x); } @Override public void set(int x, int y, T newValue) { - // TODO - } + checkBounds(x,y); + matrix.get(y).set(x,newValue); + } + private void checkBounds(int x, int y){ + if(x<0|| x>=width ||y<0||y>= height){ + throw new IndexOutOfBoundsException("Indicces out of bounds;("+x+","+")"); + } + } } diff --git a/src/main/java/model/State.java b/src/main/java/model/State.java index 1954558460d6969d09544c64c40152d97c1a736e..addc21ded7ad90dd50c022c633b4d3e43516b2ea 100644 --- a/src/main/java/model/State.java +++ b/src/main/java/model/State.java @@ -44,7 +44,12 @@ public interface State<S> { * @return The number of times the specified state appears in the list of neighbors. */ static <T> int count(T state, List<T> neighbours) { - //TODO: à compléter - return 0; + int count =0; + for(T voisin: neighbours){ + if (voisin.equals(state)){ + count ++; + } + } + return count; } } \ No newline at end of file