我无法解决的多个Java错误
我的任务要求我针对不同的用户输入打印不同的响应,并且我收到多个错误,当我尝试建议的内容时,我会收到更多错误,这些错误会将代码恢复到其原始状态 我的代码:我无法解决的多个Java错误,java,Java,我的任务要求我针对不同的用户输入打印不同的响应,并且我收到多个错误,当我尝试建议的内容时,我会收到更多错误,这些错误会将代码恢复到其原始状态 我的代码: public static void main(String[] args) {String name; int love; Scanner scanIn = new Scanner(System.in); System.out.println("How much love do you need?"); love = scanIn.
public static void main(String[] args) {String name;
int love;
Scanner scanIn = new Scanner(System.in);
System.out.println("How much love do you need?");
love = scanIn.nextLine();
for (love = 0; love < 0;)
System.out.println("Everybody needs some love!");
for (love > 10);
System.out.println("You cannot handle that much love!");
for (love > 0; love < 10;)
System.out.println("I love you "
+ Integer.toString(love+ " ways"));
scanIn.close();
}
publicstaticvoidmain(String[]args){String name;
内在的爱;
Scanner scanIn=新扫描仪(System.in);
System.out.println(“你需要多少爱?”);
love=scanIn.nextLine();
因为(爱=0;爱<0;)
System.out.println(“每个人都需要爱!”);
爱(爱>10);
System.out.println(“你不能处理那么多的爱!”);
因为(爱>0;爱<10;)
System.out.println(“我爱你”
+整数。toString(爱+方式);
scanIn.close();
}
}
原始错误:
HelloMePoem.java:32: error: ';' expected
for (love = 0; love < 0);
^
HelloMePoem.java:35: error: not a statement
for (love > 10);
^
HelloMePoem.java:36: error: ')' expected
System.out.println("You cannot handle that much love!");
^
HelloMePoem.java:38: error: not a statement
for (love > 0; love < 10);
^
HelloMePoem.java:38: error: ';' expected
for (love > 0; love < 10);
^
HelloMePoem.java:32:error:';'预期
因为(爱=0;爱<0);
^
java:35:错误:不是语句
爱(爱>10);
^
java:36:错误:“)”应为
System.out.println(“你不能处理那么多的爱!”);
^
java:38:错误:不是语句
因为(爱>0;爱<10);
^
java:38:error:';'预期
因为(爱>0;爱<10);
^
在修复大多数错误后(仍然不确定如何解决“nota statement”错误)。我收到以下错误:
HelloMePoem.java:35: error: not a statement
for (love > 10);
^
HelloMePoem.java:35: error: ';' expected
for (love > 10);
^
HelloMePoem.java:36: error: ')' expected
System.out.println("You cannot handle that much love!");
^
HelloMePoem.java:38: error: not a statement
for (love > 0; love < 10;)
^
HelloMePoem.java:35:错误:不是语句
爱(爱>10);
^
java:35:error:“;”预期
爱(爱>10);
^
java:36:错误:“)”应为
System.out.println(“你不能处理那么多的爱!”);
^
java:38:错误:不是语句
因为(爱>0;爱<10;)
^
请注意:这是我第一次使用Java,我几乎不知道自己在做什么。首先,我强烈建议阅读一篇关于Java中循环如何工作的文章(特别是在Java上);我认为,一旦你这样做,你会很快看到这里的问题
循环的语法不正确
正确的语法如下所示:
for (int i = 0; i < 10; i++) {
// Code
}
根本没有意义
还有,你有一个紧跟其后的code>意味着for
循环不会做任何事情(即使您的语法正确)。这是一个完美的例子,说明了为什么应该对代码块使用{
和}
。对于java中的循环,有一种特定的格式
对于(初始化;终止;增量){
声明
}
以上3个参数是可选的,可以保留为空。但是,尽管它们是可选的,但您必须遵循编写for循环的格式。
因此,如果所有参数都为空,则for循环将如下所示:
for ( ; ; ) {
// your code goes here (b.t.w this is an infinite loop)
}
代码中的问题是for循环格式和使用Integer#toString()的方式
我已在下面修改了您的代码:
public static void main(String[] args) {
String name;
int love;
Scanner scanIn = new Scanner(System.in);
System.out.println("How much love do you need?");
//Scanner has nextInt() which allows you to read integers without you having to convert the type.
love = scanIn.nextInt();
for (love = 0; love < 0;)
System.out.println("Everybody needs some love!");
for (;love > 10;)
System.out.println("You cannot handle that much love!");
for (; love > 0 && love < 10;)
//no need to use Integer.toString(). Just pass the variable and it will be printed.
System.out.println("I love you " + love + " ways");
scanIn.close();
}
publicstaticvoidmain(字符串[]args){
字符串名;
内在的爱;
Scanner scanIn=新扫描仪(System.in);
System.out.println(“你需要多少爱?”);
//Scanner具有nextInt(),允许您读取整数,而无需转换类型。
love=scanIn.nextInt();
因为(爱=0;爱<0;)
System.out.println(“每个人都需要爱!”);
对于(;爱情>10;)
System.out.println(“你不能处理那么多的爱!”);
对于(;爱>0&&love<10;)
//不需要使用Integer.toString()。只需传递变量,它就会被打印出来。
System.out.println(“我爱你”+爱+方式”);
scanIn.close();
}
JavaDocs参考:下面是一些帮助您理解语法的代码。我尝试了一些东西(比如你需要for循环还是if语句)
public static void main(String[] args)
{
String name;
int love;
Scanner scanIn = new Scanner(System.in);
System.out.println("How much love do you need?");
love = scanIn.nextInt();
for (int i = 1; i <= love; i++)
{
System.out.println("Everybody needs some love!");
}
if (love > 10)
{
System.out.println("You cannot handle that much love!");
}
for (int i = 1; i <= love; i++)
{
System.out.println("I love you "
+ love + " ways");
}
scanIn.close();
}
publicstaticvoidmain(字符串[]args)
{
字符串名;
内在的爱;
Scanner scanIn=新扫描仪(System.in);
System.out.println(“你需要多少爱?”);
love=scanIn.nextInt();
对于(int i=1;i 10)
{
System.out.println(“你不能处理那么多的爱!”);
}
对于(int i=1;我是不是很难用谷歌搜索for
循环和if
条件语句的基本java语法?我投票将这个问题作为主题外的问题来结束,因为这些问题可以通过阅读简单的java教程来解决。简短(但不完整)答案-for
用于反复运行代码块。if
用于一次或根本不运行代码块。我认为每次为编写for
时,您的意思是编写if
。您可能还需要运算符|
(表示或)和&
(表示和).等等-你评论说你投票结束了这个问题,这意味着你认为人们不应该被允许回答它。然而,不到三分钟后,你就来了!是哪一个?或者你认为你应该是唯一被允许提供答案的人吗?这个程序总是什么都不打印。可能不是OP想要的。Agreed.因为每次love都会被赋值0,但代码是用来解决格式问题的。虽然这基本上是正确的,而且它确实回答了这个问题,但我建议@rburrus不要把它一字不差地复制为您的答案-您的赋值不会得到高分!这是for循环如何工作的一个很好的解释,但可能不会包括你的作业计划让你练习的所有要素。
public static void main(String[] args) {
String name;
int love;
Scanner scanIn = new Scanner(System.in);
System.out.println("How much love do you need?");
//Scanner has nextInt() which allows you to read integers without you having to convert the type.
love = scanIn.nextInt();
for (love = 0; love < 0;)
System.out.println("Everybody needs some love!");
for (;love > 10;)
System.out.println("You cannot handle that much love!");
for (; love > 0 && love < 10;)
//no need to use Integer.toString(). Just pass the variable and it will be printed.
System.out.println("I love you " + love + " ways");
scanIn.close();
}
public static void main(String[] args)
{
String name;
int love;
Scanner scanIn = new Scanner(System.in);
System.out.println("How much love do you need?");
love = scanIn.nextInt();
for (int i = 1; i <= love; i++)
{
System.out.println("Everybody needs some love!");
}
if (love > 10)
{
System.out.println("You cannot handle that much love!");
}
for (int i = 1; i <= love; i++)
{
System.out.println("I love you "
+ love + " ways");
}
scanIn.close();
}