java编程中的方法问题

java编程中的方法问题,java,Java,在Java中,我最近刚刚学习了一些方法,我想做一些事情来将我学到的知识应用到实践中。然而,我只是被卡住了 我想做的是打印一行“巧克力是什么颜色的?1.白色2.黑色3.棕色,答案是” 基本上,我的目标是让打印行显示“答案是棕色的。” 我能得到几句建议吗 public static void main(String[] args) { //What color is chocolate? 1. White 2. Black 3. Brown int corAns = methodC

在Java中,我最近刚刚学习了一些方法,我想做一些事情来将我学到的知识应用到实践中。然而,我只是被卡住了

我想做的是打印一行“巧克力是什么颜色的?1.白色2.黑色3.棕色,答案是”

基本上,我的目标是让打印行显示“答案是棕色的。”

我能得到几句建议吗

public static void main(String[] args) {
    //What color is chocolate? 1. White 2. Black 3. Brown

    int corAns = methodChocolate(3);
    if (corAns == 3) {
        System.out.println("Brown");
    }

    System.out.println("What color is chocolate? 1. White 2. Black 3. Brown.
                       The answer is "+corAns);
}

static int methodChocolate(int ans) {
    if (ans == 3) {
        return 3;
    } else if (ans == 2) {
        return 2;
    } else if (ans == 1) {
        return 1;
    }
    return 0;
}

更改
methodChocolate
以返回
字符串

static String methodChocolate(int ans) {
    if (ans == 3) {
        return "Brown";
    ...
你这样称呼它

String corAns = methodChocolate(3);

然后您应该能够正确地打印它。

您可以执行以下操作:

import java.util.Scanner;

public class example{


public static void main(String[] args) {
    //input keyboard
    Scanner sc= new Scanner(System.in);
    //What color is chocolate? 1. White 2. Black 3. Brown
    System.out.println("What color is chocolate? \n1. White \n2. Black \n3. Brown.");
    String corAns = methodChocolate(sc.nextInt());
    System.out.println("The answer is "+corAns);
}

static String methodChocolate(int n){
    switch(n){
        case 1:
            return "White";
        case 2:
            return "Black";
        case 3:
            return "Brown";
        default:
            return null;
    }
}

}

将数字和颜色名称放在一个关联结构中,如
HashMap
,然后使用该结构从选项编号中获取颜色名称。如果你不知道如何使用
Map
s,你应该学习它们。它们对编程非常重要。如果你现在只是在学习方法,这对你来说可能有点先进,但这将是实现这一目标的最佳方式。您还可以将颜色名称存储在列表中,并将数字用作列表中的索引。它是否正在做您希望它做的事情?或者这仅仅是对“这看起来怎么样?”的一般性呼吁。@Carcigenicate谢谢,我会调查的。@MrB它没有做我想做的事情。我很难让corAns显示“brown”,因为您称静态方法是错误的。它根本不需要是一个静态方法,但是如果您希望它是静态方法,那么您需要调用
Classname.staticMethodName(参数)