JAVA错误。如果可能,需要以注释或代码的形式提出建议,请,
因为我是新手。我已经尝试了一些代码。请提出一些问题。。我收到这个错误。请帮我解决这个问题JAVA错误。如果可能,需要以注释或代码的形式提出建议,请,,java,Java,因为我是新手。我已经尝试了一些代码。请提出一些问题。。我收到这个错误。请帮我解决这个问题 import java.util.Scanner; import java.io.*; package calculator; public class calc { public static void main(String[] args) { } private int valueA; private int valueB;
import java.util.Scanner;
import java.io.*;
package calculator;
public class calc {
public static void main(String[] args) {
}
private int valueA;
private int valueB;
private String operator;
private char operatorA;
public int getvalueA() {
return valueA;
}
public int getvalueB() {
return valueB;
}
{
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter problem.");
{
valueA = keyboard.nextInt();
valueB = keyboard.nextInt();
operator = keyboard.next();
operatorA = operator.charAt(0);
int add = valueA + valueB;
int minus = valueA - valueB;
int multiply = valueA * valueB;
int divide = valueA / valueB;
String clearScreen = null;
switch (operatorA) {
case '+':
System.out.println(add);
break;
case '-':
System.out.println(minus);
break;
case '*':
System.out.println(multiply);
break;
case '/':
System.out.println(divide);
case 'C':
System.out.println(clearScreen);
break;
default:
System.out.println("unknown operator '" + operator + "'. Please try again.");
break;
}
}
}
请提供纠正点
:语法错误,插入“}”以完成MethodBody编译器抱怨的主要问题是大括号的位置不正确(末尾缺少一个大括号)。但是,您可能也没有在正确的位置编写代码。您可能希望将它的大部分放在
main()
中,但是相反,您将它放在构造函数中,因此,如果不至少实例化Calc
类型的对象,它将无法运行。实际上,您希望将代码重构为如下内容:
import java.util.Scanner;
public class calc {
private static int valueA;
private static int valueB;
private static String operator;
private static char operatorA;
public int getValueA() {
return valueA;
}
public int getValueB() {
return valueB;
}
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter problem.");
valueA = keyboard.nextInt();
valueB = keyboard.nextInt();
operator = keyboard.next();
operatorA = operator.charAt(0);
int add = valueA + valueB;
int minus = valueA - valueB;
int multiply = valueA * valueB;
int divide = valueA / valueB;
String clearScreen = null;
switch (operatorA) {
case '+':
System.out.println(add);
break;
case '-':
System.out.println(minus);
break;
case '*':
System.out.println(multiply);
break;
case '/':
System.out.println(divide);
case 'C':
System.out.println(clearScreen);
break;
default:
System.out.println("unknown operator '" + operator
+ "'. Please try again.");
break;
}
}
}
也就是说,如果您想从main访问类中的变量,它们必须声明为static(因为main是/必须是static),就像我在这里为您所做的那样
或者,您可以实例化类型为
Calc
的对象,并通过您创建的getter访问其成员,然后变量不必是静态的(可能是您最初想要的)。这通常比较干净,我将把它作为练习留给你。注意Java中的标准命名约定:camelCase和类名以大写字母开头编译器抱怨的主要问题是大括号的位置不正确(末尾缺少一个大括号)。但是,您可能也没有在正确的位置编写代码。您可能希望将它的大部分放在main()
中,但是相反,您将它放在构造函数中,因此,如果不至少实例化Calc
类型的对象,它将无法运行。实际上,您希望将代码重构为如下内容:
import java.util.Scanner;
public class calc {
private static int valueA;
private static int valueB;
private static String operator;
private static char operatorA;
public int getValueA() {
return valueA;
}
public int getValueB() {
return valueB;
}
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter problem.");
valueA = keyboard.nextInt();
valueB = keyboard.nextInt();
operator = keyboard.next();
operatorA = operator.charAt(0);
int add = valueA + valueB;
int minus = valueA - valueB;
int multiply = valueA * valueB;
int divide = valueA / valueB;
String clearScreen = null;
switch (operatorA) {
case '+':
System.out.println(add);
break;
case '-':
System.out.println(minus);
break;
case '*':
System.out.println(multiply);
break;
case '/':
System.out.println(divide);
case 'C':
System.out.println(clearScreen);
break;
default:
System.out.println("unknown operator '" + operator
+ "'. Please try again.");
break;
}
}
}
也就是说,如果您想从main访问类中的变量,它们必须声明为static(因为main是/必须是static),就像我在这里为您所做的那样
或者,您可以实例化类型为
Calc
的对象,并通过您创建的getter访问其成员,然后变量不必是静态的(可能是您最初想要的)。这通常比较干净,我将把它作为练习留给你。注意Java中的标准命名约定:camelCase和类名称以大写字母开头确保所有大括号与方法匹配。运行它的代码还需要是一个方法
public static void parse{
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter problem.");
valueA = keyboard.nextInt();
valueB = keyboard.nextInt();
然后从主方法调用该方法。确保所有大括号与方法匹配。运行它的代码还需要是一个方法
public static void parse{
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter problem.");
valueA = keyboard.nextInt();
valueB = keyboard.nextInt();
然后从主方法调用该方法。您有一些奇怪的花括号位置 这里是应该可以的:
import java.util.Scanner;
import java.io.*;
package calculator;
public class calc {
private int valueA;
private int valueB;
private String operator;
private char operatorA;
public int getvalueA() {
return valueA;
}
public int getvalueB() {
return valueB;
}
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter problem.");
valueA = keyboard.nextInt();
valueB = keyboard.nextInt();
operator = keyboard.next();
operatorA = operator.charAt(0);
int add = valueA + valueB;
int minus = valueA - valueB;
int multiply = valueA * valueB;
int divide = valueA / valueB;
String clearScreen = null;
switch (operatorA) {
case '+':
System.out.println(add);
break;
case '-':
System.out.println(minus);
break;
case '*':
System.out.println(multiply);
break;
case '/':
System.out.println(divide);
case 'C':
System.out.println(clearScreen);
break;
default:
System.out.println("unknown operator '" + operator + "'. Please try again.");
break;
}
}
}
你有一些奇怪的花括号 这里是应该可以的:
import java.util.Scanner;
import java.io.*;
package calculator;
public class calc {
private int valueA;
private int valueB;
private String operator;
private char operatorA;
public int getvalueA() {
return valueA;
}
public int getvalueB() {
return valueB;
}
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter problem.");
valueA = keyboard.nextInt();
valueB = keyboard.nextInt();
operator = keyboard.next();
operatorA = operator.charAt(0);
int add = valueA + valueB;
int minus = valueA - valueB;
int multiply = valueA * valueB;
int divide = valueA / valueB;
String clearScreen = null;
switch (operatorA) {
case '+':
System.out.println(add);
break;
case '-':
System.out.println(minus);
break;
case '*':
System.out.println(multiply);
break;
case '/':
System.out.println(divide);
case 'C':
System.out.println(clearScreen);
break;
default:
System.out.println("unknown operator '" + operator + "'. Please try again.");
break;
}
}
}
publicstaticvoidmain(String[]args){}
是你的方法开始的方式…@kon我告诉过你,我是新手。无法将你的知识与像我这样的新手进行比较…不必自责:)。我只是指出我发现的问题。我建议将来使用集成开发环境(IDE)。Eclipse之类的东西可以帮助您避免这个问题(或者至少在创建它时立即捕获它)。祝你好运publicstaticvoidmain(String[]args){}
是你的方法开始的方式…@kon我告诉过你,我是新手。无法将你的知识与像我这样的新手进行比较…不必自责:)。我只是指出我发现的问题。我建议将来使用集成开发环境(IDE)。Eclipse之类的东西可以帮助您避免这个问题(或者至少在创建它时立即捕获它)。祝你好运为了正确命名事物并了解如何正确使用static
关键字,我还将删除System.out.println(“Enter problem”)(输入问题)后面的多余大括号。很好!请注意,原始代码中的括号不是构造函数。由于它们不是静态块,因此在没有类实例的情况下,代码不会运行。回答得好。正确地命名事物,并了解如何正确使用static
关键字。我还会在System.out.println(“输入问题”)之后删除多余的大括号。很好!请注意,原始代码中的括号不是构造函数。由于它们不是静态块,因此在没有类实例的情况下,代码不会运行。好答案,顺便说一句