java雷达_Java编写有关雷达问题,哪位高手帮个忙,谢谢~~~

本文详细介绍了Java编程中用于雷达系统的Point类和RadarScreen类。Point类包含x和y坐标,提供构造方法、坐标获取方法及计算两点间距离的方法。RadarScreen类则包含最大点数,使用Point数组存储,提供了添加点、判断是否满、查找点、计算两点距离、获取所有点和更新点的方法。所有的交互均通过外部的ConsoleUI类完成,类内部不涉及输入输出操作。
摘要由CSDN通过智能技术生成

Point类成员变量:lx坐标(double)ly坐标(double)公有方法:lPoint(),构造方法,有两个参数,分别用于接收该点的x坐标和y坐标。lgetX(),getY(),分别用于获取该点的x坐标和...

Point类

成员变量:

l x坐标(double)

l y坐标(double)

公有方法:

l Point(),构造方法,有两个参数,分别用于接收该点的x坐标和y坐标。

l getX(),getY(),分别用于获取该点的x坐标和y坐标的值。

l toString(),没有任何参数,返回表示当前点坐标的字符串。如果一个点的x坐标为12,y坐标为13,那么,应该返回的字符串形式为:(12.0,13.0)

l

getDistanceFrom(),用于计算并返回当前点与另外一个点之间的绝对距离。该方法有一个参数,它的值是对另外一个点对象的引用。该方法使用下面的公式计算两点之间的距离并返回计算结果。

RadarScreen类

成员变量:

l maxNumOfPoints (int)

l radarPoints (Point类型的数组)

成员方法:

l RadarScreen(),构造方法,有一个参数,表示雷达最多能够保存多少点,即点的最大数量。构造方法创建一个长度合适的Point类型的数组,并将该数组对象赋值给合适的成员变量。

l addPoint(),有一个参数,用于接收一个点对象,并将这个点对象插入到点数组中。前提条件是:数组未满,并且需要添加的对象不是null。如果其中一个条件不成立,方法将什么都不做。

l isFull(),返回一个布尔类型的值,用于表示点数组是否已满。

l checkPoint(),接收一个参数,该参数表示的需要进行检查的点的编号(假设点编号是一个整数,并且radarPoint数组的下标是对应的,比如,编号为0的点对应元素radarPoint[0])。该方法的作用是用于检查指定编号的点在数组中是否存在。如果点存在,方法就返回对该点的引用,否则返回null。

l getDistance(),有两个参数:起点编号(int)和终点编号(int)。该方法返回给定两点之间的距离。该方法的前提条件是起点和终点都存在。方法会调用起始点对象的getDistanceFrom方法来计算起点与终点之间的距离。如果前提条件不满足,方法返回-1。

l getPoints(),没有任何参数,返回一个数组对象,它包含了当前保存在雷达屏幕上的所有点。如果雷达屏幕上没有任何点,该方法将会返回一个长度为0的数组。

l updatePoint(),有三个参数:需要被更新的点的编号,新的x坐标和y坐标。这个方法将会使用新坐标创建一个新的Point对象,并用它替换指定数组下标上的点对象。前提条件是:将被更新的点存在。如果需要被更新的点不存在,方法将什么都不做。

注意: 在RadarScreen类中没有任何的用户交互(输入或输出)。用户只能通过ConsoleUI类进行交互。这个类在任何时候都不能要求用户进行输入,或者向屏幕打印输出任何信息。

展开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值