回答編集履歴

3

typo

2020/08/29 14:41

投稿

shiketa
shiketa

スコア4061

test CHANGED
@@ -38,7 +38,7 @@
38
38
 
39
39
  ああ。while(true),breakが意味不明だったのですが、omosaを定義する場所がおかしいでしょう。
40
40
 
41
- whileの中で定義したら、というか、addTavaraメソッドの中で定義したら、omosaは毎回0。tavara.getPaino()がどんな値を返すか想像できませんが、if文はたいてい真になるのでしょうね。だから。
41
+ whileの中で定義したら、というか、addTavaraメソッドの中で定義したら、omosaは毎回0から開始。tavara.getPaino()がどんな値を返すか想像できませんが、if文はたいてい真になるのでしょうね。だから。
42
42
 
43
43
 
44
44
 

2

追記

2020/08/29 14:40

投稿

shiketa
shiketa

スコア4061

test CHANGED
@@ -23,3 +23,81 @@
23
23
 
24
24
 
25
25
  Tavaraクラスの内容も含めたちゃんとコンパイルできて動くソースを提示してみてください。
26
+
27
+
28
+
29
+ ----
30
+
31
+ ----
32
+
33
+
34
+
35
+ > Tavaraクラスを下に追加しました。ご指摘お願いします。
36
+
37
+
38
+
39
+ ああ。while(true),breakが意味不明だったのですが、omosaを定義する場所がおかしいでしょう。
40
+
41
+ whileの中で定義したら、というか、addTavaraメソッドの中で定義したら、omosaは毎回0。tavara.getPaino()がどんな値を返すか想像できませんが、if文はたいてい真になるのでしょうね。だから。
42
+
43
+
44
+
45
+ ```diff
46
+
47
+ diff --git a/src/main/java/Matkalaukku.java b/src/main/java/Matkalaukku.java
48
+
49
+ index f2f792d..4789dc6 100644
50
+
51
+ --- a/src/main/java/Matkalaukku.java
52
+
53
+ +++ b/src/main/java/Matkalaukku.java
54
+
55
+ @@ -4,6 +4,7 @@ import java.util.ArrayList;
56
+
57
+ public class Matkalaukku {
58
+
59
+ private final int maksimipaino;
60
+
61
+ private final ArrayList<Tavara> tavarat;
62
+
63
+ + private int omosa = 0;
64
+
65
+
66
+
67
+ public Matkalaukku(int maksimipaino) {
68
+
69
+ this.maksimipaino = maksimipaino;
70
+
71
+ @@ -11,13 +12,9 @@ public class Matkalaukku {
72
+
73
+ }
74
+
75
+
76
+
77
+ public void addTavara(Tavara tavara) {
78
+
79
+ - while (true) {
80
+
81
+ - int omosa = 0;
82
+
83
+ - omosa = omosa + tavara.getPaino();
84
+
85
+ - if (omosa <= this.maksimipaino) {//ここで追加されるのはthis.maksimipaino
86
+
87
+ - this.tavarat.add(tavara);//以下にしたつもりですが、すべて追加されます。
88
+
89
+ - break;
90
+
91
+ - }
92
+
93
+ + omosa = omosa + tavara.getPaino();
94
+
95
+ + if (omosa <= this.maksimipaino) {//ここで追加されるのはthis.maksimipaino
96
+
97
+ + this.tavarat.add(tavara);//以下にしたつもりですが、すべて追加されます。
98
+
99
+ }
100
+
101
+ }
102
+
103
+ ```

1

typo

2020/08/29 14:38

投稿

shiketa
shiketa

スコア4061

test CHANGED
@@ -22,4 +22,4 @@
22
22
 
23
23
 
24
24
 
25
- Tavaraクラスの内容も提示してみてください。
25
+ Tavaraクラスの内容も含めたちゃんとコンパイルできて動くソースを提示してみてください。