我是一名新编码员,我的方法遇到了一些麻烦。我做了一些但是在主要方法中没有检测到它们。 (P.S我还没有填写大部分方法,因为我想先解决这个问题。) 感谢大家。
package area;
import java.util.*;
/**
*
* @author domendes
*/
public class Area {
public static void main(String[] args) {
Scanner kbdln = new Scanner(System.in);
System.out.println("Welcome to the area calculating code! Which shape would you like to calculate the area of?");
System.out.println("Press 1 for a Triangle, 2 for a Circle, 3 for a Rectangle, and 0 to quit.");
int request = kbdln.nextInt();
if (request == 1) {
areaTriangle();
} else {
if (request == 2) {
areaCircle();
} else {
if (request == 3) {
areaRectangle();
} else {
if (request < 1) {
System.out.println("Goodbye");
return;
}
}
}
}
}
}
public static void areaTriangle() {
Scanner kbdln = new Scanner(System.in);
System.out.println("Welcome to the Tirangle area cacluator. Enter in the height of your triangle");
double triBase = kbdln.nextDouble();
}
public static void areaCircle() {
}
public static void areaRectangle() {}
}
答案 0 :(得分:0)
在Java中,一切都是对象。因此,您创建的方法实际上是属于您的Area
类的方法。如果要访问它们,则必须使用Area
类来引用它们。
鉴于您已创建static
方法(这意味着您的方法处于类级别而不是对象级别。您应该阅读更多有关它的信息)。您可以使用classname.methodname
访问它们。在你的情况下,它将是Area.areaTriangle()
。
答案 1 :(得分:0)
你的if / else语句结构不合理。第一个语句应为if
,其后的每个语句应为elseif
,最后一个语句应为else
。但是在这种情况下,switch语句最好
switch(request){
case 1:
areaTriangle();
break;
case 2:
areaCircle();
break;
case 3:
areaRectangle();
break;
default:
System.out.println("Goodbye");
}
答案 2 :(得分:0)
主要方法
中未检测到它们
main方法是静态上下文,这意味着如果您尝试从Area类外部调用这些方法,则必须执行{
"id": 6,
"server_name": "server1",
"alias": "",
"ip_address": "192.168.1.7",
"endpoint": [
{
"id": 23,
"server_id": 6,
"application_id": 10,
"application": null
}
]
}
。
或者,你可以定义一个Area.areaTriangle()
类,就像这样。
然后,如果你想在任何其他类中使用这些方法,你可以做
AreaPrompter
AreaPrompter prompter = new AreaPrompter();
prompter.whateverMethodNameHere();
答案 3 :(得分:0)
public static void main(String [] args){
Scanner sc = new Scanner(System.in);
System.out.println("Press 1 for a Triangle, 2 for a Circle, 3 for a Rectangle, and 0 to quit."
int num = sc.nextInt();
if(num == 1){
areaTriangle();
}else if(num == 2){
areaCirlce();
}else if(num == 3){
areaRectangle();
else{
System.out.println("GoodBye");
}
调用方法的方式没有任何问题,因为main方法是static
,您可以直接调用static
方法而无需使用任何类对象等。