public class Test2 {
public static void mystery(int x, int y, boolean b, String s) {
System.out.println(x*3 + "..." + x/y);
if (b)
System.out.println("yes");
else
System.out.println("no");
for (int i = 2; i <= 5; i++)
System.out.print(2*i);
System.out.println();
System.out.println((double)(y/x));
System.out.println(s.substring(3,7));
} // end mystery
public static void main(String[] args) {
mystery(7,3,true,"freezing");
}
}
我有些困惑,我想我缺少了一些东西。这段代码中for循环的输出为何是46810?每个数字之间不应该有一条界线吗?
最佳答案
在我看来,您希望循环看起来像这样:
for (int i = 2; i <= 5; i++)
System.out.print(2*i);
System.out.println();
但是
for
仅适用于第一条语句。要在循环中包含多个语句,您需要将循环主体括在花括号中:for (int i = 2; i <= 5; i++) {
System.out.print(2*i);
System.out.println();
}
最好在编写
for
循环以及while
,do
,if
和else
时始终使用大括号,即使该语言允许您仅使用一个语句而不使用大括号即可。例如: if (b) {
System.out.println("yes");
} else {
System.out.println("no");
}