2-2 编写一个表示二维平面上的点的类MyPoint

简介: 编写一个表示二维平面上的点的类MyPoint,满足以下条件: 1、定义private的成员变量x和y,表示点的x和y坐标,类型为double 2、定义两个MyPoint的构造方法,一个构造方法不带参数,而且x和y的初始值...

编写一个表示二维平面上的点的类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);
        MyPoint a = new MyPoint(in.nextDouble(), in.nextDouble());
        MyPoint b = new MyPoint(in.nextDouble(), in.nextDouble());
        System.out.println(a.getD(b));

    }

}

class MyPoint {
    private double x;
    private double y;
    MyPoint(){
        x = 0; 
        y = 0;
    }
    MyPoint(double x, double y){
        this.x = x; 
        this.y = y;
    }
    double getD(MyPoint b) {
        double xd = this.x - b.x;
        double yd = this.y - b.y;
        return Math.sqrt(xd * xd + yd * yd);
    }
}
目录
相关文章
|
机器学习/深度学习 算法 Python
LightGBM高级教程:深度集成与迁移学习
LightGBM高级教程:深度集成与迁移学习【2月更文挑战第6天】
601 4
|
Kubernetes 测试技术 容器
实践 Fake ClientSet 单元测试
在 Kubernetes 相关的开发中,client-go 是最常用的,对于 client-go 相关的代码我们可以通过 fake ClientSet 来编写单元测试,本文将实践利用 fake ClientSet
1877 0
28个残疾人,两个月,被阿里客服改变的命运
十年里,阿里巴巴云客服累计免费培训了35万人,为11万人提供了就业岗位,这28个残疾人也正是这11万人中的一份子。
28个残疾人,两个月,被阿里客服改变的命运
|
11月前
|
存储 调度 数据安全/隐私保护
鸿蒙Flutter实战:13-鸿蒙应用打包上架流程
鸿蒙应用打包上架流程包括创建应用、打包签名和上传应用。首先,在AppGallery Connect中创建项目、APP ID和元服务。接着,使用Deveco进行手动签名,生成.p12和.csr文件,并在AppGallery Connect中上传CSR文件获取证书。最后,配置签名并打包生成.app文件,上传至应用市场。常见问题包括检查签名配置文件是否正确。参考资料:[应用/服务签名](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-signing-V5)。
567 3
鸿蒙Flutter实战:13-鸿蒙应用打包上架流程
|
自然语言处理 开发者
《黑神话:悟空》的剧情脚本与对话系统设计
【8月更文第26天】在《黑神话:悟空》这款游戏中,引人入胜的故事情节和丰富多样的对话系统是吸引玩家的关键因素之一。本文将详细介绍游戏剧情脚本的编写过程以及交互式对话系统的实现技术。
577 0
Anaconda添加镜像却依旧安装以及创建慢或者失败的问题
这篇文章讨论了Anaconda在添加了镜像源之后仍然出现安装和创建包慢或失败的问题,并提供了修改.condarc文件以正确设置清华大学镜像源的解决方法。
Anaconda添加镜像却依旧安装以及创建慢或者失败的问题
无法写入用户设置。请打开用户设置并清除错误或警告,然后重试。
无法写入用户设置。请打开用户设置并清除错误或警告,然后重试。
|
存储 分布式计算 NoSQL
大数据编程技术基础实验七:HBase实验——部署HBase
大数据技术基础实验七,.掌握HBase集群安装部署及HBase Shell的一些常用命令的使用。
916 0
大数据编程技术基础实验七:HBase实验——部署HBase
|
缓存 运维 负载均衡
阿里云云效操作报错合集之在获取Maven私有库配置出错,该如何操作
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
SQL Java 数据库连接
一般文章让你了解mybatis,以及如今在Java开发的地位!
一般文章让你了解mybatis,以及如今在Java开发的地位!
407 0