【发布时间】:2016-12-03 22:05:47
【问题描述】:
我有一个二维数组,当用户投票时存储答案是/否,所以对于我的情况,第 1 行是问题 1,然后当问题添加到系统时,它会转到第 2 行等。选民 ID 是列,我需要的是计算是/否答案的数量,以获得每个问题的票数。
我已经设法遍历整个数组并计算是/否答案(如果我只想要一个问题,这将起作用),但是我似乎无法让我的系统打印每一行的结果(问题) 循环。
这是我存储答案的数组
public static List<String[][]> voteList = new ArrayList<String[][]>();
public static String[][] arrayOfAnswers = new String[100][100];
public static List<Referendum> referendumList= new ArrayList<Referendum>();
这就是我存储答案的方式
System.out.println("Enter your first name here: ");
String first = Scanner.nextLine();
System.out.println("Enter your surname here: ");
String surname = Scanner.nextLine();
System.out.println("Enter your city here: ");
String city = Scanner.nextLine();
User user1=new User();
int vid=user1.getTheIndex(first, surname, city);
System.out.println("Enter your answer for the question: ");
String theanswer = Scanner.nextLine();
if(theanswer.toUpperCase().equals("YES"))
{
arrayOfAnswers[qid][vid]=theanswer;
voteList.add(arrayOfAnswers);
System.out.println("Thanks for voting. \n");
}
else if(theanswer.toUpperCase().equals("NO"))
{
arrayOfAnswers[qid][vid]=theanswer;
voteList.add(arrayOfAnswers);
System.out.println("Thanks for voting. \n");
}
else
{
System.out.println("You must enter a yes and no answer, please try again.");
}
这是我试图计算每一行(问题)是/否答案的循环
for (Referendum q: Menu.referendumList)
{
int i=0;
int yesCount = 0;
int noCount = 0;
for(int j=0; j<Menu.arrayOfAnswers[i].length; j++)
{
if(Menu.arrayOfAnswers[i][j] != null)
{
if(Menu.arrayOfAnswers[i][j].equals("yes"))
{
yesCount++;
}
else if(Menu.arrayOfAnswers[i][j].equals("no"))
{
noCount++;
}
}
}
System.out.print("Referendum : " + q.question + " \n");
System.out.println("Votes yes: " + yesCount);
System.out.println("Votes no: " + noCount + "\n");
}
【问题讨论】:
标签: java loops for-loop iteration