好的,我有这个程序可以输入个位数 0-9。然后它计算每个数字出现的次数与输入的数字总数相比,并将每个数字出现的次数存储在 timesOccured[] 数组中。值是数字出现的次数,索引是数字,所以如果 timesOccured[1] == 15,则 1 出现了 15 次。
我有一个名为 minimumCommonNumbers 的 ArrayList,它是 4 个最不常见的数字的列表。然后,我有一个名为RecommendedNumbers 的ArrayList,它是四个leastCommonNumbers 中的三个的四种可能组合。
这里的一切工作正常,除了没有生成 ArrayList RecommendedNumbers ......它必须是某种逻辑缺陷,但我无法弄清楚它为什么不工作......这是声明:
List<Integer> leastCommonNumbers = new ArrayList();
List<String> recommendedNumbers = new ArrayList();
double timesOccured[]={0,0,0,0,0,0,0,0,0,0}
这是代码:
double[] nums = timesOccured;
double temp;
int temp2;
leastCommonNumbers.clear();
recommendedNumbers.clear();
for(int al = 0; al<nums.length;al++){
for(int al2 = 0;al2<nums.length-1;al2++){
if(nums[al2] > nums[al2+1]){
temp = nums[al2];
nums[al2]=nums[al2+1];
nums[al2+1]=temp;
}}}
for(int b = 0; b ==3;b++){
for(int r = 0; r<nums.length; r++){
if(nums[b] == timesOccured[r]){
leastCommonNumbers.add(r);
}}}
for(int y = 0; y == 3; y++){
int t = 0;
recommendedNumbers.add(String.valueOf(leastCommonNumbers.get(t))+String.valueOf(leastCommonNumbers.get(t+1))+String.valueOf(leastCommonNumbers.get(t+2)));
temp2 = leastCommonNumbers.get(0);
for(int a = 0; a == 3; a++){
if(a < 3){
leastCommonNumbers.set(a, leastCommonNumbers.get(a+1));
}else{
leastCommonNumbers.set(a, temp2);
}}}
timesOccured 被初始化为全 0,并在整个程序运行过程中发生变化。当我在运行此程序后尝试使用推荐编号时,我收到一个错误,即推荐编号的大小为 0,即没有值。
如此迷茫...