如何在java中添加用户输入的最后5个整数?

时间:2014-03-11 12:24:11

标签: java

int sum = 0;        
ArrayList<Integer> num = new ArrayList<Integer>();
for(int i=1;i<=schoolStart;i++)
{
  System.out.println("Percentage of students passing in"+" "+i+" is ");
  percentageOfPassingStudents = sc.nextInt();
  num.add(percentageOfPassingStudents);
  int count=0;          
  for(int j=0;;j++)
  {
     sum = sum+num.get(j);
  }
  count++;
}

我希望条件检查它是否占用了数组列表的最后5个值。

提前感谢。

2 个答案:

答案 0 :(得分:0)

只需检查你的arraylist的大小是否至少与schoolStart - 5变量的大小一样大。

int sum = 0;
ArrayList<Integer> num = new ArrayList<Integer>();
for(int i=1;i<=schoolStart;i++)
{
  System.out.println("Percentage of students passing in"+" "+i+" is ");
  percentageOfPassingStudents = sc.nextInt();
  num.add(percentageOfPassingStudents);
  int count=0;
  if(num.size() > schoolStart-5) {
    sum = sum+num.get(i-1);
  }
  count++;
}

另外,我不确定你要做什么,但这看起来不是一个好的解决方案(对于任何事情) - 请参阅avgvstvs解决方案以获得更好的替代方案

答案 1 :(得分:0)

如果您只关心最后5个整数输入,我会考虑使用LinkedList并将其视为Stack。

LinkedList<Integer> myList = new LinkedList<Integer>();
//Always add at the front of the list:
myList.addFirst(new Integer(2));


//asserting there are at least 5 items in the list:
for(int i = 0; i < 5; ++i) {
  Integer tmp = myList.removeFirst();
  //do stuff
}