我想創建一個java項目,它接受來自一個方法的值,然後這些值被轉移到另一個方法,然後打印出值,如果我把在(void main)中的掃描值並使用checkLines
方法,它將起作用。但是我想創建一個(讀取)方法,它將這些值傳遞給一個方法(checkLines)以提供這些值。 問題是第二種方法不讀取掃描儀值。java-從一個無效方法,然後到另一個方法的值
import java.util.Scanner;
public class Somethin {
static double a1,b1,a2,b2;
public static void main(String[] args) {
Read(a1,b1,a2,b2);
checkLines(a1,b1,a2,b2);
}
public static void Read(double a, double b, double c , double d){
Scanner scan = new Scanner(System.in);
System.out.print("Please enter a1: ");
double a1 = scan.nextDouble();
System.out.print("Please enter b1: ");
double b1 = scan.nextDouble();
System.out.print("Please enter a2: ");
double a2 = scan.nextDouble();
System.out.print("Please enter b2: ");
double b2 = scan.nextDouble();
scan.close();
}
public static void checkLines (double a1 , double b1, double a2, double b2){
if (a1 == a2) {
System.out.println("Line 1 and Line 2 are parallel");
}
if (a1 * a2 == -1){
System.out.println("Line 1 and Line 2 are perpendicular");
} else {
System.out.println(" The lines are intersecting");
System.out.println(" There points of intersection are");
double x = ((b2 - b1)/(a2-a1));
double y = (a1*(x) + b1);
System.out.println(" X = " +x);
System.out.println(" y = " + y);
}
}
}
是否有任何理由你的方法需要是無效的?或者甚至只是從讀取 – Eabryt
的末尾調用checkLines你的'Read'方法聲明瞭它自己的局部變量 - 所以你的字段沒有被賦值。 –