我试图将单个数字的整数合并为一个数字

时间:2013-10-04 16:15:23

标签: java arraylist int

我在定义x的行上遇到了越界错误。我做错了什么?

import java.util.ArrayList;
import java.lang.Math;

public class poopy
{
    public static void main(String[] args)
    {
       ArrayList<Integer> num = new ArrayList<Integer>();
       double x;

       for(int j=1; j<5; j++)
       {
          num.add(j);
       }

       for(int i: num)
       {
           x = num.get(i) * Math.pow(10,i);
           System.out.println(x);
       }


   }
}

这将是一个计算器,每次按下数字按钮时,int ArrayList都会增长。

4 个答案:

答案 0 :(得分:2)

您需要传递foreach循环并使用旧式for循环:

   for(int i=0;i<num.size;i++)
   {
       x = num.get(i) * Math.pow(10,i);
       System.out.println(x);
   }

您会得到数组的值,但您也需要索引。所以,没有foreach循环。

答案 1 :(得分:0)

for(int i: num)

我这里的价值不是指数。

答案 2 :(得分:0)

你的(for-each)循环应该是这样的:

for(int i: num)
{
    x = i * Math.pow(10,i);
    System.out.println(x);
}

我代替num.get(i)

如果你想通过索引访问项目,那么你不应该使用for-each循环,使用for循环如下:

for(int i = 0; i < num.size(); i++)
{
    x = num.get(i) * Math.pow(10,i);
    System.out.println(x);
}

答案 3 :(得分:-1)

使用num.get(i)方法,您可以通过索引访问数组。数组的元素是[num[0]=1, num[1]=2, num[2]=3, num[3]=4]

循环for(int i: num)正在访问num数组的元素,并将它们存储在变量i中。