我有这个类,在printVotes方法中,每次打印每个投票都必须执行if语句。有没有办法组合两个if语句。我可以同时列印所有候选人的姓名和票数吗?

public class TestCandidate {
    public static void main(String[] args)
    {
        Canidate[] canidate = new Canidate[5];

        // create canidate
        canidate[0] = new Canidate("John Smith", 5000);
        canidate[1] = new Canidate("Mary Miller", 4000);
        canidate[2] = new Canidate("Michael Duffy", 6000);
        canidate[3] = new Canidate("Tim Robinson", 2500);
        canidate[4] = new Canidate("Joe Ashtony", 1800);

        printVotes(canidate) ;
    }

    public static void printVotes(Canidate [] List)
    {
        double max;
        int index;

        if (List.length != 0)
        {

            index = 0;
            for (int i = 1; i < List.length; i++)
            {

            }

            System.out.println(List[index]);
        }

        if (List.length != 0)
        {
            index = 1;
            for (int i = 1; i < List.length; i++)
            {

            }
            System.out.println(List[index]);
            return;
        }
    }
}

最佳答案

如果您传递List<Candidate> candidates;并假设每个候选人都有一个List<Integer> Votes

    List<Integer> votes= new ArrayList<Integer>() ;
    for(Candidate c:candidates)
    {
       votes.add(c.GetVote()) ;
    }
    for(Integer v:votes)
    {
      System.out.println(v);
    }

09-26 05:41