我想编写一个可以打印多个用户想要的星星的Java应用程序。 该程序将询问用户他想要打印多少次。 这是我的代码:
import java.util.Scanner;
public class lab {
public static void main(String[] args){
int StarsN;
Scanner input;
input = new Scanner(System.in);
System.out.println("How many stars do you need?");
StarsN= input.nextInt();
}
public static void loopz(String[] args) {
int loopEnd = StarsN;
int loopStart;
for (loopStart = 0;loopStart==loopEnd;loopStart++) {
System.out.print("*");
}
}
}
答案 0 :(得分:2)
首先要注意的是..我不知道你为什么要发送你的loopz方法一个String [] ..这就是我在loopz方法中会做的不同:
public static void loopz(int numOfStars)
{
for(int i = 0; i < numOfStars; i++)
System.out.print("*");
}
也在main中调用loopz并将参数发送给它。
答案 1 :(得分:2)
您的loop : loopStart = 0
表示loopStart == loopEnd
,它不会进入循环,因为loopStart
不等于loopEnd
,因此您应该更改{{ 1}}循环到"=="
。
答案 2 :(得分:1)
将for (loopStart = 0;loopStart==loopEnd;loopStart++)
更改为for (loopStart = 0;loopStart < loopEnd;loopStart++)
。
不要忘记从loopz()
致电main()
:
public static void main(String[] args){
Scanner input = null;
try {
input=new Scanner(System.in);
System.out.println("How many starts do you need ?");
int StarsN= input.nextInt();
loopz(StarsN); //Add this
} finally {
if( input != null )
input.close();
}
}
public static void loopz(int numStars) { //You don't need the String[] args here since you never use it
for (int loopStart = 0; loopStart < numStars;loopStart++) {
System.out.print("*") ;
}
}
答案 3 :(得分:1)
以下是答案:
import java.util.Scanner;
public class lab {
public static void main(String[] args){
int StarsN;
Scanner input;
input=new Scanner(System.in);
System.out.println("How many starts do you need ?");
StarsN= input.nextInt();
int loopEnd = StarsN;
int loopStart;
for (loopStart = 0;loopStart<loopEnd;loopStart++) {
System.out.print("*") ;
}
}
}
我真的很想教你如何钓鱼,而不是仅仅给你鱼,但我认为在此之前你需要太多的理论。试着找一些书或一本好的完整的教程,我很抱歉,但我不知道两者都不能对你说。