Java 为什么不是';我的整数不能向上计数并打印吗?

Java 为什么不是';我的整数不能向上计数并打印吗?,java,for-loop,Java,For Loop,我试图在这里做一个循环,但这将打印数字#####+#的1-2的多个数字组合。但是现在我无法让我的numD在最后一个循环中打印出来。出于某种原因,numD甚至不会连接或增量添加。感谢您的帮助,您可以忽略注释的代码 dim = 2; numA = 1; numB = 1; numC = 1; numD = 1; for (int numA = 1; numA < dim + 1; numA++) { // biggest or leftest number loop first

我试图在这里做一个循环,但这将打印数字#####+#的1-2的多个数字组合。但是现在我无法让我的numD在最后一个循环中打印出来。出于某种原因,numD甚至不会连接或增量添加。感谢您的帮助,您可以忽略注释的代码

dim = 2;
numA = 1;
numB = 1;
numC = 1;
numD = 1;
for (int numA = 1; numA < dim + 1; numA++) { // biggest or leftest number loop first

                for (int numB = 1; numB < dim + 1; numB++) { // second number from the left

                    for (int numC = 1; numC < dim + 1; numC++) { // third number from the left

                        for (int numD = 1; numD < dim + 1; numD++) { // least number loop last            
                        // this will store number in arraylist
                            //outcomeOutput = String.valueOf(numA) + String.valueOf(numB)+" + "
                                //  + String.valueOf(numC) + String.valueOf(numD); 

                            System.out.println(numD);

                            System.out.println(outcomeOutput);
                            //dBArray.get(dim-1).add(outcomeOutput);
                            //System.out.println(dBArray.get(dim-1).get(count));
                            //count++;
                        }
                    }
                }


        }
dim=2;
numA=1;
麻木=1;
numC=1;
numD=1;
对于(int numA=1;numA
我可能会看到。。。。。 我刚看到迪姆被宣布了。我不认为它被宣布,我没有看到它,直到我张贴

您的numD变量是一个整数。您必须将其设置为要由Println显示的字符串。看看这篇关于Println的帖子,你不需要(也不应该)在循环之前初始化循环变量

如果取消对行的注释:

String outcomeOutput = String.valueOf(numA) + String.valueOf(numB)+" + "
                          + String.valueOf(numC) + String.valueOf(numD);

System.out.println(outcomeOutput);
它似乎能打印出你想要的东西

实际上,有更简单的方法将整数转换为字符串。您可以使用
String.format()
(例如
String.format(“%d%d+%d%d”、numA、numB、numC、numD)
,或者更简单的是,您可以将它们连接到一个字符串。在下面的代码中,我从一个空字符串开始
,然后将int连接到它。我使用了更简单的变量名,我认为这使代码更易于阅读

int dim = 2;
for (int a = 1; a < dim + 1; a++) {
    for (int b = 1; b < dim + 1; b++) {
        for (int c = 1; c < dim + 1; c++) {
            for (int d = 1; d < dim + 1; d++) {
                System.out.println("" + a + b + " + " + c + d);
            }
        }
    }
}
intdim=2;
对于(int a=1;a
产生:

11+11
11+12
11+21
11+22
12+11
12+12
12+21
12+22
21+11
21+12
21+21
21+22
22+11
22+12
22+21
22+22


欢迎使用Stack Overflow。我建议您删除与问题无关的任何注释,因为这些注释会使回答者对代码更加困惑。如果您努力简化问题,例如,制作一个示例来演示问题,但只使用一个或两个循环,而不是四个循环,这也会很好。实际上e> println()
方法被重载,并且有一个版本采用了
int
,因此这将起作用。请参阅文档。谢谢!很好的观点!谢谢!这似乎帮助很大。这正是我试图实现的。我还想知道我的Java版本是否过时。在我尝试使用与此代码非常类似的东西(不同)之前,但我没有打印任何内容。您是否也知道如何在2D arraylist中存储这些值?例如,如果dim==1,则2D arraylist的第一行的第一列将是“11+11”,而对于arraylist的下一行,第二列将是这些字符串形式的计算值。