Java:如何为数组分配变量?

时间:2014-12-26 10:14:10

标签: java arrays

我想从用户读取一个整数,并希望在不同的位置执行一些算术运算,例如在第十位,第一百位等。例如,使用int x = 258796的变量;我想为每个其他数字添加2。我想出的解决方案是将x的值赋给数组,让我们说int [] y。按照这个程序,我很容易就数字执行上述过程。我在将int x的值赋给int [] y时遇到问题。请帮助我....

将会理解解决此问题的良好有效建议。

4 个答案:

答案 0 :(得分:2)

首先,您需要打破数字并将其存储在数组中:

int number = 1234567890;
int len = Integer.toString(number).length();
int[] iarray = new int[len];
int index;
    for (index = 0; index < len; index++) {
        iarray[index] = number % 10;
        number /= 10;
} //this breaks the entire number into single digit and stores it in an array

然后你可以执行你想要执行的任何操作:让我们说每个数字加2,

for(i=0;i<len;i++)
{
  iarray[i]=iarray[i]+2; //any number you want to add
}

答案 1 :(得分:1)

以下逻辑可能会对您有所帮助。

int num=1234567;
int[] y;
int i=0;
while(num>0){
    y[i]=num%10;
    num=num/10;
    i++;
}

最后你得到的结果如y = {7,6,5,4,3,2,1}; 你应该扭转它。

答案 2 :(得分:0)

如果我理解你需要什么,你可以在这里找到答案:How to get the separate digits of an int number? (用更多的票数检查答案)

答案 3 :(得分:0)

创建一个整数字符串,然后循环每个字符将其转换为int并放入一个数组

 int x =725912;
 String mystring=String.valueOf(x);
 int[] nums = new int[x.length()];

 for (int i = 0; i < mystring.length(); i++){
    nums[i] = Integer.parseInt(mystring.substring(i,i+1));
}