Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何检查arrayList的所有元素是否相同?_Java_Arrays_Arraylist_Printing - Fatal编程技术网

Java 如何检查arrayList的所有元素是否相同?

Java 如何检查arrayList的所有元素是否相同?,java,arrays,arraylist,printing,Java,Arrays,Arraylist,Printing,我正在制作一个程序,将根据谁是赢家打印出来。(更多关于 链接中的任务) 我无法以正确的值打印“无赢家”。只有当我的arrayList中的所有元素都相同时,我才尝试打印“无赢家”。前 arr = [10, 10, 10] 然后打印: "no winner" 如何检查arrayList中的所有元素是否相等 import java.util.ArrayList; import java.util.Collections; import java.util.Scanner; public clas

我正在制作一个程序,将根据谁是赢家打印出来。(更多关于 链接中的任务)

我无法以正确的值打印“无赢家”。只有当我的arrayList中的所有元素都相同时,我才尝试打印“无赢家”。前

arr = [10, 10, 10]
然后打印:

"no winner"
如何检查arrayList中的所有元素是否相等

import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

public class B {
public static void main(String args[]) {
    Scanner sc = new Scanner(System.in);
    int testCase = sc.nextInt();

    for (int i = 0; i < testCase; i++ ) {
        int candidate = sc.nextInt();
        int maximum = 0;
        int winner = 0;
        boolean tie = false;
        ArrayList<Integer> votes = new ArrayList<>();

        for (int j = 0; j < candidate; j++) {
            int nVotes = sc.nextInt();
            votes.add(nVotes);
        }

        int imax = votes.indexOf(Collections.max(votes));
        int max = Collections.max(votes); // max winner
        int in = votes.indexOf(votes);
        int index = imax + 1;

        int sum = 0;

        for(int o = 0; o < votes.size(); o++)
        {
            sum = sum + votes.get(o);
            if (votes.get(o) == votes.get(o) ) {
                tie = true;
            }
        }

            if (max > (sum / 2)) {
                System.out.println("majority winner " + index);
            }
            else if (max < (sum / 2)) {
                System.out.println("minority winner " + index);
            }
            else if (votes.get(i) == votes.get(i)) {
                System.out.println("no winner");
            }

    }

}
}
import java.util.ArrayList;
导入java.util.Collections;
导入java.util.Scanner;
公共B级{
公共静态void main(字符串参数[]){
扫描仪sc=新的扫描仪(System.in);
int testCase=sc.nextInt();
for(int i=0;i(总和/2)){
System.out.println(“多数胜利者”+指数);
}
否则,如果(最大值<(总和/2)){
System.out.println(“少数派赢家”+索引);
}
else if(投票数.获取(i)=投票数.获取(i)){
System.out.println(“无赢家”);
}
}
}
}

尝试使用已完成的操作将领带盒设置为true,如:

else if(tie==true){
System.out.println(“无赢家”);
}

投票.stream().distinct().count()==1
。您还可以执行
Collections.max(Arrays.asList(投票))==Collections.min(Arrays.asList(投票))
将列表收集到一个集合中并比较其大小
newhashset(投票).size()==投票.size()
if(tie){
-它是布尔值,可以直接使用