内容を簡単にしたものを書きます
Int[] array ={1,1,1};
If(array[0] == array ==[1] == [2])
3つの値が等しかったらという条件を作りたいです
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答6件
0
ベストアンサー
java
1public boolean allSame(int[] array) { 2 if (array.length == 0) return true; 3 int x = array[0]; 4 for (int i : array) { 5 if (i != x) return false; 6 } 7 return true; 8}
メソッド化して汎用的にしてみました。
Streamを使うとこうなるか
java
1if (Arrays.stream(array).allMatch(i -> i == array[0]))
投稿2018/06/11 02:56
編集2018/06/11 02:59総合スコア20651
0
(x, y , z) -> (y - x, z - x) と x を原点にした vector をつくります。
この vectore の長さが 0 であれば、 x, y, z がすべて等しいことになります。
長さを 3平方の定理でもとめるおは計算業がおおくなるので、 abs(y - x) + abx(z - x) で代用できます。
3 変数以上の場合にもそのまま拡張できます。
abs 計算も面倒なら、 [y -x, z -x] の uniq をとったら [0] になることで代用するのも良いかもしれません。
投稿2018/06/11 12:44
総合スコア22324
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
比較対象(複数可)が同一であることのチェック。
対象すべてが一致するということはソート後の最小と最大が同一であることと同じ
static void main(int...params) { Arrays.parallelSort(params); if (params[0] == params[params.length -1]) { System.out.println("一致"); } else { System.out.println("不一致"); } }
main(1,1,1); // 一致 main(2,1,1); // 不一致 main(1,2,1); // 不一致 main(1,1,2); // 不一致 main(2,1,2); // 不一致
投稿2018/06/11 03:35
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/11 14:34
0
こんにちは、要素数が3の時は&&を使えばすみますが、一応要素数がいくらになっても対応できるようにしてみました。
java
1public class Main { 2 public static void main(String[] args) { 3 // Your code here! 4 int[] array ={1,1,1}; 5 boolean judge = false; 6 7 for(int i = 0; i < array.length - 1; i++){ 8 if(array[i] == array[i + 1]){ 9 judge = true; 10 } 11 else{ 12 judge = false; 13 break; 14 } 15 } 16 System.out.println(judge); 17 } 18}
投稿2018/06/11 03:02
編集2018/06/11 03:03退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/06/11 04:25 編集