我對此比較陌生,任何幫助都會很棒。對於我的作業,我應該製作一個Triangle和一個TriangleTester類,它使用掃描儀控制值,以找出三角形的邊長,角度,周長等。我不是要求你做我的作業,但也許指向我在正確的方向。這只是一小部分,但它使我無法繼續。當調用方法時,掃描儀輸入不起作用
我想不通的是如何讓變量我遇到方法輸入移動(如果是有道理的
這裏是我的三角代碼:
import java.math.*;
import java.util.Scanner;
public class Triangle
{
private double A, B, C, D, h;
public double x1, x2, x3, y1, y2, y3;
public double lengthA, lengthB, lengthC;
private double angleA, angleB, angleC;
private double calcPerimeter, calcArea, getHeight;
//Create new Triangle
public Triangle(){
}
//to get length of a (AB) use A = (x1, y1) & B = (x2,y2)
public double getLengthC(){
double distance = Math.sqrt((Math.pow((x1-x2),2))+(Math.pow((y1-y2),2)));
return distance;
}
}
這裏是我的TriangleTester代碼:
import java.util.Scanner;
public class TriangleTester
{
public static void main(String[]args)
{
Triangle triangle1 = new Triangle();
Scanner scan = new Scanner(System.in);
System.out.println("Enter x1 for point A");
double x1 = scan.nextDouble();
System.out.println("Enter y1 for point A");
double y1 = scan.nextDouble();
System.out.println("Enter x2 for point A");
double x2 = scan.nextDouble();
System.out.println("Enter y2 for point A");
double y2 = scan.nextDouble();
System.out.println("Enter x3 for point A");
double x3 = scan.nextDouble();
System.out.println("Enter y3 for point A");
double y3 = scan.nextDouble();
System.out.println("Set up a Triangle with coordinates " +"("+x1+","+y1+")"+ ","+ "("+x2+","+y2+")" +","+ "("+x3+","+y3+")");
System.out.println("Length of side c " + triangle1.getLengthC());
}
}
出於測試目的,我想輸入的值:
0
0
4
0
3
3
並將c的長度計算爲4.我看到,當我在TriangleTester類中使用變量時,變量可以工作,但是當我從我的Triangle類調用某個方法時,這些值不起作用。
從我在哪裏,我覺得我有操縱三角形類,以便從掃描儀輸入我的移動到該區域....或者我可能是錯的
public Triangle(){} //I would have to add something here maybe?
非常感謝您 – user3386695
〜我現在只有一個小問題。所以我寫了所有的陳述,但是當我將我的Triangle類中的參數聲明爲double時,我在Triangle triangle1 = new Triangle(x1,x2,x3,y1,y2,y3)上得到一個錯誤。我把它放在掃描儀的下面。 (我猜是因爲x1不是雙倍)。還有一件事我不得不對x1 ... y3做些什麼。我必須在某處添加更多嗎?像Luiggi在下面的帖子中獲取和設置? – user3386695
@ user3386695 - 您已經將答案標記爲已接受。如果你的問題還沒有解決,你爲什麼要這樣做?關於你的問題,你得到的錯誤是什麼?你可以使用我建議的或其他的方式。它是由你決定。就像我說的那樣,你不必爲每一個元素調用setter方法。一切都由建設者照顧。 – SudoRahul