teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

追記

2019/10/22 10:25

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -16,6 +16,8 @@
16
16
  }
17
17
  ```
18
18
 
19
+ こんなふうに使います。
20
+
19
21
  ```JShell
20
22
  jshell> allSame()
21
23
  $ ==> true
@@ -33,6 +35,8 @@
33
35
  $ ==> false
34
36
  ```
35
37
 
38
+ 配列をそのまま渡しても構いません。
39
+
36
40
  ```JShell
37
41
  jshell> int[] arr = {1, 1, 1, 1};
38
42
  arr ==> int[4] { 1, 1, 1, 1 }
@@ -41,6 +45,7 @@
41
45
  $ ==> true
42
46
  ```
43
47
 
48
+ ---
44
49
  StackOverflowにも同様の議論がありました。
45
50
  様々な方法が提案されていますが、どれも直接比較よりは分かりづらい印象です。
46
51
  [Java all determine elements are same in a list - Stack Overflow](https://stackoverflow.com/questions/29288568/java-all-determine-elements-are-same-in-a-list)

2

追記

2019/10/22 10:25

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -14,4 +14,33 @@
14
14
 
15
15
  return true;
16
16
  }
17
- ```
17
+ ```
18
+
19
+ ```JShell
20
+ jshell> allSame()
21
+ $ ==> true
22
+
23
+ jshell> allSame(1)
24
+ $ ==> true
25
+
26
+ jshell> allSame(1, 1)
27
+ $ ==> true
28
+
29
+ jshell> allSame(1, 1, 1)
30
+ $ ==> true
31
+
32
+ jshell> allSame(1, 1, 1, 2)
33
+ $ ==> false
34
+ ```
35
+
36
+ ```JShell
37
+ jshell> int[] arr = {1, 1, 1, 1};
38
+ arr ==> int[4] { 1, 1, 1, 1 }
39
+
40
+ jshell> allSame(arr)
41
+ $ ==> true
42
+ ```
43
+
44
+ StackOverflowにも同様の議論がありました。
45
+ 様々な方法が提案されていますが、どれも直接比較よりは分かりづらい印象です。
46
+ [Java all determine elements are same in a list - Stack Overflow](https://stackoverflow.com/questions/29288568/java-all-determine-elements-are-same-in-a-list)

1

修正

2019/10/22 10:22

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -14,18 +14,4 @@
14
14
 
15
15
  return true;
16
16
  }
17
-
18
- static boolean allSame(Object... args) {
19
- if(args.length <= 1) {
20
- return true;
21
- }
22
-
23
- for(int i = 1; i < args.length; ++i) {
24
- if(!args[i-1].equals(args[i])) {
25
- return false;
26
- }
27
- }
28
-
29
- return true;
30
- }
31
17
  ```