我有幾個調試問題,我無法弄清楚。我在下面的代碼中評論了他們,如果有人能糾正它並解釋錯誤發生的原因,我會非常感激。我是新來的Java,這是我的工作Java調試,語法問題
public class handleexceptions2 {
int sideA = -1;
int sideB = -1;
Scanner input = new Scanner(System.in){
do //Syntax Error on Token "do", delete this token
{
System.out.println("Enter your choice (a/b/c/q) : ");
char ch = in.nextChar();
switch(ch)
{
case 'a': sideA = in.nextDouble();
if(sideA<0)
System.out.println("Error! Please enter a valid number!");
break;
case 'b': sideB = in.nextDouble();
if(sideB<0)
System.out.println("Error! Please enter a valid number!");
break;
case 'c': if(sideA<0 || sideB<0)
System.out.println("Other two sides not yet given! please provide a and b first. ");
else
System.out.print("Side C(the hypotenuse) is: "+ Math.sqrt((sideA*sideA) + (sideB*sideB)));
break;
case 'q': break;
default : System.out.println(" Enter a valid choice! ");
}
while(ch!='q');
} //Multiple markers at this line
Syntax Error, insert "}" to complete class body
Syntax Error, insert ";" to complete FieldDecleration
//
你必須把一個方法中的語句。 – azurefrog
^那,並且你在while條件之前缺少了一個結束括號。 – CConard96
僅供參考:修復語法錯誤使代碼編譯不被視爲「調試」,至少在我的書中沒有。雖然我認爲,在一個非常鬆散的解釋中,編譯錯誤是一個「錯誤」,但是直到代碼首先編譯才能使用「調試器」(幫助查找錯誤的工具)。 – Andreas