尝试学习循环时出现 Java 语法错误



我正在尝试自学Java,并且正在学习for loops。 我正在尝试编写一个简短的程序,它为我提供了以下输出:

1

1 4

1 4 9

1 4 9 25

我有一种感觉,我在指数部分被绊倒了。 我的源代码如下:

public class Forloop {
public static void main(String[] args) {
for (int i = 1; i <= 4; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(int j = Math.pow(j,i));
}
System.out.println();
}
}

}

任何人都可以为我提供任何帮助,说明我哪里出错了,也许还有解决方法。 非常感谢。

打印语句中不能有变量声明。就这样写:

public static void main(final String[] args) {
for (int i = 1; i <= 4; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(Math.pow(j, i));
}
System.out.println();
}
}

另一种方法是将声明写在自己的行上。不过,您必须将其命名为j以外的名称,因为您已经声明了该变量:

public static void main(final String[] args) {
for (int i = 1; i <= 4; i++) {
for (int j = 1; j <= i; j++) {
int exp = (int) Math.pow(j, i);
System.out.print(exp);
}
System.out.println();
}
}

此外,正如@JigarJoshi指出的那样,您不需要Math.pow()方法来实现输出,因为您正在输出正方形。这将完成您的目标:

public static void main(final String[] args) {
for (int i = 1; i <= 4; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j * j + " ");
}
System.out.println();
}
}

你可以这样做

public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
for (int j = 1; j <= i; j++) {
System.out.print((int) Math.pow(j, 2));
System.out.print(" ");
}
System.out.println();
}
}

哪些输出

1
1 4
1 4 9
1 4 9 16
1 4 9 16 25

正如 Keppil 所说,你不能在打印语句中使用变量声明。 但是,您可以在语句中初始化变量。

public static void main(final String[] args) {
int j2;
for (int i = 1; i <= 4; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j2 = (int) Math.pow(j, i));
}
System.out.println();
}
}

你不能在System.out.print里面做int j = Math.pow(j,i)。你的逻辑是什么? 您可以简单地按System.out.print(Math.pow(j,i))打印;

相关内容

  • 没有找到相关文章

最新更新