这个问题对我的问题非常具体,这就是为什么我要创建一个新问题。该程序中的第二种方法应该是数字1 2 3 4 5 6 7 8 9 10
的一行。我遇到的唯一问题是我不知道如何在主方法中打印出来。
public class Uppgift1_6a
{
public static void main(String[] args)
{
for(int k = 0; k < 10; k++)
{
int tal = Numberline(k);
System.out.print(tal);
}
}
public static int Numberline(int tal1)
{
int tal = 1;
for(int i = 1; i < 11; i++)
{
tal = tal1 + i;
}
return tal;
}
}
现在它打印出11到19之间的所有数字。如果我更改它,它只打印出10或11。
答案 0 :(得分:2)
仔细查看代码:
public static int Numberline(int tal1)
{
int tal = 1;
for (int i = 1; i < 11; i++)
{
tal = tal1 + i;
}
return tal;
}
for
循环字面上完全没有任何意义 - 你只返回最终结果。最终结果总是等于tal1 + 10
;再次,for
循环在这一点上做了什么没有区别。 (我建议您使用调试器逐步调试代码以使自己相信这一事实。)
如果您希望在for
循环中打印出值,则需要执行以下操作:
for (int i = 1; i < 11; i++)
{
// You may need to modify this line too, depending on what values you want printed
tal = tal1 + i;
// Print the value here
System.out.print(tal);
}
因为您编写它的方式只打印出tal
(您返回的那个)的最终值。