首页 > 解决方案 > Java:数独拼图生成无法正常工作

问题描述

我正在尝试制作一个数独应用程序,并在其中生成每个谜题。我认为我这一代应该可以完美运行,但我的应用程序继续崩溃。我认为它来自这里和以后:

If(_band == 2) {
    while((band2.contains(placeholder)) || (band2.get((int)(_stack - 1)).doubleValue() == band1.get((int)(_stack - 1)).doubleValue())) {
        placeholder = SketchwareUtil.getRandom((int)(1),(int)(9)); 
    }
    band2.add(Double.valueOf(placeholder));
}

这从 band2 到 band9,检查它之前的每个波段是否有相同位置的重复数字,并检查它的波段是否有重复数字。

如果有帮助,band3 生成如下所示:

If(_band == 3) {
    while((band3.contains(placeholder)) || (band3.get((int)(_stack - 1)).doubleValue() == band1.get((int)(_stack - 1)).doubleValue()) || (band3.get((int)(_stack - 1)).doubleValue() == band2.get((int)(_stack - 1)).doubleValue())) {
        placeholder = SketchwareUtil.getRandom((int)(1)), ((int)(9));
    } 
    band3.add(Double.valueOf(placeholder));
}  

错误代码始终为:无效列表操作:索引:0,大小:0

标签: androidwhile-loopsudoku

解决方案


推荐阅读