我正在製作一個Java程序,它可以通過給出a,b和c使用二次方程來求解根。不能調用另一個類
下面是主要代碼:
//main file
class Call
{
public static void main(String args [])
{
double a=Double.parseDouble(args[0]);
double b=Double.parseDouble(args[1]);
double c=Double.parseDouble(args[3]);
Receiver r = new Receiver(".");
if (r.determine(a,b,c)=true)
{
double root1=r.Root;
double root2=r.Root2;
System.out.println("The first root is +root1");
System.out.println("The second root is +root2");
}
else
{
System.out.println("Not a number");
}
}
}
現在,這裏就是我試圖調用,但不能在類。
class Receiver
{
public boolean determine(double a, double b, double c)
{
double value=b*b-4*a*c;
if (value<0)
return false;
else
return true;
}
public double Root(double a, double b, double c)
{
double value=b*b-4*a*c;
double root=(-b+ Math.sqrt(value))/(2*a);
return root;
}
public double Root2(double a, double b, double c)
{
double value=b*b-4*a*c;
double root2=(-b- Math.sqrt(value))/(2*a);
return root2;
}
}
我確定我已經編譯了Receiver.java。但是,當我編譯Call.java,我得到這個錯誤:
Call.java:14:error:cannot find symbol
Receiver r= new Receiver();
symbol: class Receiver
location: class Call
看看爲'package'和Java中'import'關鍵字。 – Dilawar
你在使用任何'IDE'嗎?像** Eclipse **或** NetBeans **? –
這確實看起來像一個導入問題,雖然如果沒有更多的信息就無法確定。但是我會指出,即使這個特定的編譯錯誤是固定的,'double root1 = r.Root;'和'double root2 = r.Root2;'行也不會被編譯。你必須用實際參數調用'Root'和'Root2'。 –