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

o7jaxewo  于 2021-07-09  发布在  Java
关注(0)|答案(2)|浏览(320)
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个值。
提前感谢。

a2mppw5e

a2mppw5e1#

只需检查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解决方案以获得更好的替代方案

nfs0ujit

nfs0ujit2#

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

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
}

相关问题