回答編集履歴
1
追記
test
CHANGED
@@ -1,3 +1,39 @@
|
|
1
|
-
前回の質問と原因は同様です。
|
1
|
+
[前回の質問](https://teratail.com/questions/93579)と原因は同様です。
|
2
2
|
|
3
3
|
条件が網羅されていないからです。
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
> ```Java
|
8
|
+
|
9
|
+
> public static int keisan2 (String E, int x){
|
10
|
+
|
11
|
+
> for (int i = 0; i< E.length() ; i++){
|
12
|
+
|
13
|
+
> if (E.charAt(i) == '<') {
|
14
|
+
|
15
|
+
> int y = 0;
|
16
|
+
|
17
|
+
> y += 1;
|
18
|
+
|
19
|
+
> return y;
|
20
|
+
|
21
|
+
> }
|
22
|
+
|
23
|
+
> }
|
24
|
+
|
25
|
+
> }
|
26
|
+
|
27
|
+
> ```
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
このfor文内で、一度もif文の条件が満たされなかった場合はreturnが呼ばれません。
|
32
|
+
|
33
|
+
絶対にありえないとしても、なんらかの値を返すようコーディングしなければなりません。
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
for文の後にreturn文を置けばエラーは解消されます。
|
38
|
+
|
39
|
+
返すべき値は、仕様によって異なるかと。
|