Java 我需要将一个变量传递给一个方法

Java 我需要将一个变量传递给一个方法,java,methods,static,Java,Methods,Static,在我的代码中,我创建了一个名为Points的类,它检查给定问题的答案并返回分数。另一个名为Report的类需要一些信息来打印它 package finalproject; public class Points { public static float calculatePoints(byte[] userAnswer) { byte realAnswer[], gradeCounter; float score ; gradeCounter = 0;

在我的代码中,我创建了一个名为Points的类,它检查给定问题的答案并返回分数。另一个名为Report的类需要一些信息来打印它

package finalproject;

public class Points {

public static float calculatePoints(byte[] userAnswer) {

    byte realAnswer[], gradeCounter;
    float score ;
    gradeCounter = 0;

    realAnswer = new byte[3];
    realAnswer[0] = 3;
    realAnswer[1] = realAnswer[2] = 1;

    for (int i = 0; i < userAnswer.length; i++) {
        if (userAnswer[i] == realAnswer[i]) {
            gradeCounter++;
        }
    }

    score = (gradeCounter / 3) * 100;

    return score;
}



}

package finalproject;

public class Report {

public static void getLoginInfo(String[] loginInformation) {

    loginInformation = new String[2];
    String name, id;
    name = loginInformation[0];
    id = loginInformation[1];

}

public static void printReport() {

    System.out.println("\n\n-------------------\n\n");
    System.out.println("\t\tJava Certification");
    System.out.println("\t\t Test Result\n\n");
    System.out.println("\tName: ");
    System.out.println("\tTest Registration ID: ");
    System.out.println("\tPassing Score 52%");
    System.out.println("\tYour Score: ");

    /*
     * if (score1 >= 52.0) { System.out.println("\n\nComment GRADE: pass\n\n"); }
     * else { System.out.println("\n\nComment GRADE: fail\n\n"); }
     */

    System.out.println("Max Score\t" + "---------------100%");
    System.out.println("Max Score\t" + "--------52%");

}

}
包最终项目;
公共课分数{
公共静态浮点计算点(字节[]userAnswer){
字节realAnswer[],成绩计数器;
浮点数;
等级计数器=0;
realAnswer=新字节[3];
realAnswer[0]=3;
realAnswer[1]=realAnswer[2]=1;
for(int i=0;i=52.0){System.out.println(“\n\n评分:通过\n\n”);}
*else{System.out.println(“\n\n推荐等级:fail\n\n”);}
*/
System.out.println(“最大分数\t”+“--------------100%”);
System.out.println(“最大分数\t”+“--52%”);
}
}
在getLoginInfo中,应该设置名为name和id的变量,我希望将它们传递到printReport中


我想将函数calculatePoint()中名为score的变量传递给printReport,我该怎么做?

如果在任何函数之外声明名称和id,则字符串名称和id的范围将是类的范围,这意味着它将对类报告中的所有函数可见。类报告的每个对象/实例都将名称和id作为属性。然后可以使用getLoginInfo进行设置,并使用printReport()打印名称和id

public class Report {
String name, id;
public static void getLoginInfo(String[] loginInformation){
    name = loginInformation[0];
    id = loginInformation[1];

}

public static void printReport() {

  ...
}
}



通过将其作为参数传递,如果我将其作为参数传递,我将在main中调用report类,那么我不能传递任何东西!欢迎来到StackOverflow!您的问题有点让人困惑,因为您似乎知道如何传递变量—您已经在使用
calculatePoints()
中的
byte[]
来传递变量了。为什么你不能用同样的方式传递你的其他值呢?我知道如果我给它一个参数,然后我在main中调用它,那么它将再次接受一个参数。我想你可能需要重新审视你在问题中包含的代码——你在这里展示的似乎并不能表达你遇到的问题。我猜您有一个场景,您希望能够通过从
main
方法调用
printReport
来打印一些输出,而不需要任何参数,但是
printReport
也可以包含一些从其他地方传入的值。可能包括
main
方法的相关部分?查看更多建议…如果我这样做并在main中调用printReport,那么我应该再次给它一个参数@对不起,我不明白你的意思。我认为您希望printReport打印不同的内容,所以我修改了函数。但问题的标题是“我需要将变量传递到方法中”,您说要从main传递参数。你能澄清一下你到底想要什么吗?你想要打印报告来打印从getLoginInfo()获得的数据吗?打印报告应该打印一些数据,如名称、ID和Score@Adham是的,但是printReport应该能够以某种方式接收数据。它可以像print(“Hello”)一样硬编码,也可以像我在修改后的答案中解释的那样创建类报告的对象,并且可以打印对象的属性,或者可以将参数传递给函数。应该有一种方法告诉函数要打印哪些数据。如果不需要参数,您希望如何将数据传递给函数?