我正在尝试将4位数字的数字存储到数组中,但最终会被反转:1234
在数组中存储为[4,3,2,1]
。
int[] nums = new int[4];
for (int i = 0; i < length; i++) {
nums[i] = input % 10;
input /= 10;
System.out.print(nums[i]);
}
答案 0 :(得分:2)
input % 10;
将首先返回数字的十位,因此只需在数组位置上向后循环。
for (int i = nums.length - 1; i >= 0; i--) {
您也可以使用ArrayList并检查while(input > 0)
以执行任何长度编号。
答案 1 :(得分:2)
您只需要以相反的顺序遍历数组,因为数字%10将为您提供十位的数字。
例如:如果编号1234,编号%10 =&gt; 4应该存储在数组末尾[3]
for (int i = nums.length - 1; i >= 0; i--) {
nums[i] = input % 10;
input /= 10;
System.out.print(nums[i]);
}
答案 2 :(得分:0)
另一个选择是更改数组索引:
nums[nums.length - i - 1] = input % 10;