我正在开发一个Java应用程序,我有一个..
function timey() {
console.log( displayMinutesObj.innerHTML );
}
..
。
我正在获取最新的int ArrayList
索引,但请指导我如何使用ArrayList
循环获取下一个ArrayList
索引。
我正在尝试使用下面的代码执行此操作,但我收到for
例外:
ArrayIndexOutOfbound
假设arraylist具有以下元素。
ArrayList<Integer> temp1 = new ArrayList<Integer>();
我们如何使用for循环来实现这一目标:
temp1={10,20,30}
我想加上1st-10和20 2月20日和30日 3月30日和10日
有可能实现这一目标吗?它适用于任何大小的for(int i=0;i<arraylist.size;i++)<--size is 3
{
int t1=temp1.get(i);
int t2=temp1.get(i+1); // <---here i want next index
}
。我愿意采用不同的方法来实现这一目标。
答案 0 :(得分:7)
如果要为最后一个索引添加第一个索引值,则应使用next position
索引作为 - (i+1)%arraylist.size()
。此外,ArrayList
大小是函数,而不是变量。
所以循环将是 -
for(int i=0;i<arraylist.size();i++)<--size is 3
{
int t1=temp1.get(i);
int t2=temp1.get((i+1)%arraylist.size());
}
答案 1 :(得分:0)
修改了您的代码段。请检查以下内容
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<Integer> temp1 = new ArrayList<Integer>();
temp1.add(10);
temp1.add(20);
temp1.add(30);
for(int i=0;i<temp1.size()-1;i++)
{
int t1=temp1.get(i);
int t2=temp1.get(i+1);
System.out.println(t1+t2);
if(i==temp1.size()-2){
System.out.println(temp1.get(0)+temp1.get(temp1.size()-1));
}
}
}
}
输出:
30
50
40