我不知道如何解决这些错误。这是我的代码:如何更正Java中的“非法表达式开始”和其他错误?
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Ld1151rdb331 {
public static void main(String[] args) {
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
float x=0, y=0;
String s;
System.out.println("Paula Plauča IRDBD01 151RDB331");
try {
System.out.print("x=");
s = br.readLine();
x = Float.parseFloat(s);
System.out.print("y=");
s = br.readLine();
y = Float.parseFloat(s);
} catch(Exception e){
System.out.println("input-output error");
return;
}
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
System.out.println("green");
else
if (y>=5 && x>=2 && y<=9-x)
System.out.println("blue");
else
if ((x>=2 && x<=5 || x>=2 && x<=10) && y>=3 && y<=7)
System.out.println("red");
else
System.out.println("white");
}
}
而且显示这些错误:
compilation info
Main.java:25: error: illegal start of expression
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: ';' expected
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: not a statement
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: ';' expected
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: not a statement
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: ';' expected
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: not a statement
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: ';' expected
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: not a statement
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: ';' expected
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: not a statement
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:25: error: ';' expected
if ((x-4)*(x-4)+(y-3)*(y-3)<=1) || (x-8)*(x-8)+(y-3)*(y-3)<=1) || (y>=5) && ((x-7.5)*(x-7.5)+(y-5)*(y-5)<=(2.5*2.5))
^
Main.java:27: error: 'else' without 'if'
else
^
13 errors
也许有人可以帮忙,我不明白。
确保开括号的数量相匹配封闭的人的数量。 – MrTux
你应该使用适当的编码风格,实际工作。你有什么是行不通的。 –
锄头你的意思是? – Paula