我必须逐行读取文本文件,除了7行之后我想使用通过将7行分配给7个不同变量来读取的内容。一旦我分配了它们,我想使用这些变量。这是很容易的部分,我知道该怎么做,我坚持的是,在使用7个变量之后,我希望能够将我的文本文件的下7行分配给相同的变量,并使用它们再次。我知道我必须使用循环(一个或多个),但是,循环文件读取器
- 我怎么让它在7线,而不仅仅是重新分配线的变量停下来?
- 我应该使用2个循环吗?
- 还是有类似的休息或可能某种“暂停”我可以申请?
- 或者是否有某种类型的计数器可以与FileReader类一起使用?
- 或者我应该创建一个吗?
这是我们的老师想要的。
停车票
怎么办: 这种分配是基于编程挑战赛的问题,8 574页上的一些修改,以便仔细阅读本讲义。如果您愿意,您可以在2人的团队中工作。合作和讨论会有帮助。注意:这是课程中最长,也是最困难的课程,因此请仔细阅读并按照说明进行操作。
对于本作业,您将设计一组类,这些类一起工作来模拟停车员向停放在米处的一些汽车发放停车票。与真实的仪表和门票的工作方式相比,这个问题可能有点虚假。
您将设计四个独立的类和一个演示程序来运行一切。在开始编写Java代码之前,阅读完整的任务到最后。您需要了解几个类的结构并理解数据文件的组织方式。
基本设置是一组停车计时器,停放在不同时间的汽车上。
每辆车都会在几分钟内购买一些停车时间。而且每辆车都会停放一段时间,并在几分钟内记录下来。有些会停放比购买更多的时间,有些会比购买更少的时间。
以下是您需要开发的四个类。 •ParkedCar Class:该课程应模拟停放的汽车。该课程的职责如下: - 了解汽车的品牌,型号,颜色,许可证号 - 了解其停车收费表的身份号码。 - 有一个toString()方法来报告其识别信息
•ParkingMeter类:该类将模拟停车计时器。该班的职责如下: - 了解自己的电表编号 - 要知道已购买的分钟数 - 要知道停放的分钟数 - 有一个toString()方法来报告其信息
•ParkingOfficer班:该班级应该模拟停车员检查停放的车辆。该类的职责如下: - 有两个实例变量:一个用于名称和一个用于警官的徽章号码 - 具有用于停车员姓名和徽章号码的两个参数的构造函数 - 具有toString()方法 - 具有一个接收ParkedCar对象和ParkingMeter对象作为参数的examine()方法。该方法确定时间是否已过期 如果时间已到,它会创建一个停车标签对象,它将作为返回值(来自examine())返回。 ▪如果时间未到期,则返回空值。
•ParkingTicket Class:该课程将模拟停车票。该课程的职责如下: - 具有一个构造函数,该构造函数接收一个ParkedCar对象,一个ParkingMeter对象和一个ParkingOfficer对象,用于初始化该类中的相应实例变量。一定要为每个参数对象使用复制构造函数。 - 这个类也有罚款金额的实例变量。 - 罚款由ParkingTicket构造函数计算: 车辆非法停放的第一小时或部分时间的罚款为25美元,车辆非法停放时每增加一小时或部分时间加上10美元。 如果时间未到期,则罚款设置为零。 - 有一个toString()方法,以您设计的有用格式准备票证(尝试匹配下面显示的示例输出或进行自己的改进),它必须报告非法的制造商,型号,颜色和许可证编号它还会报告罚款金额以及发放罚单的警察的姓名和徽章号码。在这个toString()方法中,您必须有效地使用toString()方法为停车罚单中的其他课程即ParkedCar的ParkingMeter和ParkingOfficer)
测试类 写测试类,TicketDemo,与主()使用上述类别如下运行仿真: •创建一个警察的对象让你自己的名字和证件号码,你可以把它连接到你的测试程序中r询问用户输入数据(您的选择)。 •在循环中从数据文件Asg-5_in.txt中读取数据。 (注意:文件Asg-5_inExplain.txt描述了如何解释文件内容。) o读取汽车和仪表的一个数据块,并创建一个ParkedCar对象和一个ParkingMeter对象 o致电停车员examine()方法使用ParkedCar和Parking meter对象作为参数。检查方法将返回一个票证或null。 o如果返回票证,请调用toString()方法在屏幕上打印票证。 o如果无人售票发出关于汽车(使用其toString()方法。 哦,让循环重复,直到有可用的输入文件中没有更多的数据。打印标识信息
这里是我的迄今为止,尽管我没有接近完成任务。
ParkedCar类:
public class ParkedCar{
private String make;
private String model;
private String color;
private String license;
private String meterID;
public String getMake(String make)
{
this.make = make;
return make;
}
public String getModel(String model)
{
this.model = model;
return model;
}
public String getColor(String color)
{
this.color = color;
return color;
}
public String getLicense(String license)
{
this.license = license;
return license;
}
public String getMeterID(String meterID)
{
this.meterID = meterID;
return meterID;
}
public String toString()
{
String str = "\nMake: " + make + "\nModel: " + model + "\nColor: " + color +
"\nLicense: " + license + "\nMeter ID: " + meterID;
return str;
}
}
ParkingMeter类:
public class ParkingMeter{
private String meterID;
private int minsPurchased;
private int minsParked;
public String getMeterID(String meterID)
{
this.meterID = meterID;
return meterID;
}
public int getMinsPurchased(int minsPurchased)
{
this.minsPurchased = minsPurchased;
return minsPurchased;
}
public int getColor(int minsParked)
{
this.minsParked = minsParked;
return minsParked;
}
public String toString()
{
String str = "\nMeter ID: " + meterID + "\nMinutes Purchased: " + minsPurchased +
"\nMinutes Parked: " + minsParked;
return str;
}
}
ParkingOfficer类:
public class ParkingOfficer{
private String officerName;
private String badgeNumber;
public ParkingOfficer(String officerName, String badgeNumber)
{
this.officerName = officerName;
this.badgeNumber = badgeNumber;
}
public ParkingOfficer(ParkingOfficer object2)
{
officerName = object2.officerName;
badgeNumber = object2.badgeNumber;
}
public void setParkingOfficer(String officerName, String badgeNumber)
{
this.officerName = officerName;
this.badgeNumber = badgeNumber;
}
public String toString()
{
String str = "\nOfficer's Name: " + officerName + "\nOfficer's Badge Number: " + badgeNumber;
return str;
}
}
还是有某种形式的计数器可与的FileReader类中使用?或者我应该创建一个? – lovinbayb4e
你可以发布你的尝试,以便我们可以帮助你扩展它。 –
请将此标记为家庭作业。目前尚不清楚何时首次发布。 – duffymo