回答編集履歴

2

追記

2017/11/23 10:43

投稿

LouiS0616
LouiS0616

スコア35658

test CHANGED
@@ -15,3 +15,7 @@
15
15
  コンパイラが事前に型チェックを行った結果、不正な比較が見つかりコンパイルエラーとなります。
16
16
 
17
17
  (見つかり...?見なされ...?発覚し...?検知され...?どの表現が誤解がないのだろう...)
18
+
19
+
20
+
21
+ コメントまで読んでいただくのが一番誤解がないかと思います。

1

修正

2017/11/23 10:43

投稿

LouiS0616
LouiS0616

スコア35658

test CHANGED
@@ -1,3 +1,17 @@
1
1
  `if(2<= hourOfDay && hourOfDay <= 9)`ですね。
2
2
 
3
3
  左側から順に評価されるので、hourOfDayが2以上のとき`true <= 9`が評価されてしまっています。
4
+
5
+
6
+
7
+ **KSwordOfHasteさんから指摘を受けて**
8
+
9
+ Javaはコンパイル言語なので、実際に実行する前に型のチェックが入ります。
10
+
11
+ ですので、『評価した結果エラー』と捉えられる文面は不明瞭で正確さに欠けますね。
12
+
13
+
14
+
15
+ コンパイラが事前に型チェックを行った結果、不正な比較が見つかりコンパイルエラーとなります。
16
+
17
+ (見つかり...?見なされ...?発覚し...?検知され...?どの表現が誤解がないのだろう...)