我在TestQuadraticEquations类中创建的引用导致空值,因此当我尝试将它们发送到另一个类时,我创建的程序没有任何值来分配变量。
变量的print语句只是为了测试是否有任何内容被分配,遗憾的是,什么都没有。任何建议将不胜感激。
public class TestQuadraticEquation {
public static void main(String[]args) {
TestQuadraticEquation nums = new TestQuadraticEquation();
nums.promptForNum();
TestQuadraticEquation getCo = new TestQuadraticEquation();
int a1 = getCo.getA();
int b1 = getCo.getB();
int c1 = getCo.getC();
System.out.println(a1 + " " + b1 + " " + c1);
Equation solution1 = new Equation();
System.out.println("For: " + solution1.getA2() + "x\u00B2 + " +
solution1.getB2() + "x + " + solution1.getC2());
if (solution1.getDiscriminant() > 0) {
System.out.println("Roots are: " + solution1.getRoot1() + " " +
solution1.getRoot2());
}
else if (solution1.getDiscriminant() == 0) {
System.out.println("Roots are: " + solution1.getRoot1());
}
else{
System.out.println("No roots.");
}
}
Scanner in = new Scanner(System.in);
private int a;
private int b;
private int c;
public void promptForNum() {
System.out.println("Enter three coefficicents: ");
a = in.nextInt();
b = in.nextInt();
c = in.nextInt();
}
public int getA() {
return a;
}
public int getB() {
return b;
}
public int getC() {
return c;
}
}
答案 0 :(得分:0)
您的问题源于这样一个事实:名为TestQuadraticEquation
的{{1}}实例与名为nums
的{{1}}实例不同。因此,当您调用TestQuadraticEquation
时,您正在将值插入实例中的私有变量' nums'。
如果不是抓取getCo
的值(全部为0),而是抓取nums.promptForNum()
的值,则会得到您要查找的值。
getCo