回答編集履歴

3

追記

2019/10/22 10:25

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -31,6 +31,10 @@
31
31
  }
32
32
 
33
33
  ```
34
+
35
+
36
+
37
+ こんなふうに使います。
34
38
 
35
39
 
36
40
 
@@ -68,6 +72,10 @@
68
72
 
69
73
 
70
74
 
75
+ 配列をそのまま渡しても構いません。
76
+
77
+
78
+
71
79
  ```JShell
72
80
 
73
81
  jshell> int[] arr = {1, 1, 1, 1};
@@ -84,6 +92,8 @@
84
92
 
85
93
 
86
94
 
95
+ ---
96
+
87
97
  StackOverflowにも同様の議論がありました。
88
98
 
89
99
  様々な方法が提案されていますが、どれも直接比較よりは分かりづらい印象です。

2

追記

2019/10/22 10:25

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -31,3 +31,61 @@
31
31
  }
32
32
 
33
33
  ```
34
+
35
+
36
+
37
+ ```JShell
38
+
39
+ jshell> allSame()
40
+
41
+ $ ==> true
42
+
43
+
44
+
45
+ jshell> allSame(1)
46
+
47
+ $ ==> true
48
+
49
+
50
+
51
+ jshell> allSame(1, 1)
52
+
53
+ $ ==> true
54
+
55
+
56
+
57
+ jshell> allSame(1, 1, 1)
58
+
59
+ $ ==> true
60
+
61
+
62
+
63
+ jshell> allSame(1, 1, 1, 2)
64
+
65
+ $ ==> false
66
+
67
+ ```
68
+
69
+
70
+
71
+ ```JShell
72
+
73
+ jshell> int[] arr = {1, 1, 1, 1};
74
+
75
+ arr ==> int[4] { 1, 1, 1, 1 }
76
+
77
+
78
+
79
+ jshell> allSame(arr)
80
+
81
+ $ ==> true
82
+
83
+ ```
84
+
85
+
86
+
87
+ StackOverflowにも同様の議論がありました。
88
+
89
+ 様々な方法が提案されていますが、どれも直接比較よりは分かりづらい印象です。
90
+
91
+ [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

スコア35660

test CHANGED
@@ -30,32 +30,4 @@
30
30
 
31
31
  }
32
32
 
33
-
34
-
35
- static boolean allSame(Object... args) {
36
-
37
- if(args.length <= 1) {
38
-
39
- return true;
40
-
41
- }
42
-
43
-
44
-
45
- for(int i = 1; i < args.length; ++i) {
46
-
47
- if(!args[i-1].equals(args[i])) {
48
-
49
- return false;
50
-
51
- }
52
-
53
- }
54
-
55
-
56
-
57
- return true;
58
-
59
- }
60
-
61
33
  ```