欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java习题_1

程序员文章站 2024-02-01 12:23:28
...

编写一个表示二维平面上的点的类MyPoint,满足以下条件:
1、定义private的成员变量x和y,表示点的x和y坐标,类型为double
2、定义两个MyPoint的构造方法,一个构造方法不带参数,而且x和y的初始值为0,另一个构造方法有两个参数,参数名为x和y,类型为double,用这两个参数分别作为初始x和y坐标
3、定义一个getD方法,有一个类型为MyPoint的对象参数,功能为返回当前对象和参数对象这两个坐标点的距离,返回值为double类型
4、编写测试的main方法,调用getD计算两个点之间的距离

输入:
输入2行数据, 总共4个有理数。每2个数据一组,表示一个点的x和y坐标,每行的2个数据用空格隔开。例如:
200.1 200.2
200.3 200.4

输出:
输出两个点之间的距离。例如:
0.28284271247464315

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        double x1 = in.nextDouble();
        double y1 = in.nextDouble();
        double x2 = in.nextDouble();
        double y2 = in.nextDouble();
        in.close();
        MyPoint p1 = new MyPoint(x1, y1);
        MyPoint p2 = new MyPoint(x2, y2);

        System.out.println(new MyPoint().getD(p1, p2));
    }
}

class MyPoint {
    private double x;
    private double y;

    public MyPoint() {
        this(0.0, 0.0);
    }
    public MyPoint(double x, double y) {
        this.x = x;
        this.y = y;
    }

    public double getD(MyPoint p1, MyPoint p2) {
        return Math.sqrt(Math.pow(Math.abs(p1.getX()-p2.getX()), 2)
 + Math.pow(Math.abs(p1.getY()-p2.getY()), 2));
    }
    public double getX() {
        return this.x;
    }
    public double getY() {
        return this.y;
    }

}



 

相关标签: Java