我遇到了这个程序的障碍。
我有一个程序涉及创建一个涉及凯迪拉克“库存”的程序,除此之外,我找不到我的问题的答案。
我只是不知道该怎么办。我将提供方向,然后发布我到目前为止的语法。
这是我必须做的:
一个虚构的凯迪拉克经销商的库存,并允许搜索库存以显示满足特定条件的汽车列表。
创建一个名为 Cadillac 的 ADT 类,其中包含四个实例数据字段:型号名称、库存编号和颜色的字符串,以及价格的整数。该类包含一个构造函数,它接收所有四个实例字段的值,并将参数值分配给实例变量。该类还为实例数据的每个字段包含一个简单的访问器方法和修改器方法。
当程序运行时,它从文件“inventory.dat”中加载库存。
- 以下是文件内容示例: DTS 11210 Glacier White 42706 Escalade 66502 Crimson Pearl 65547 XLR 58362 Radiant Bronze 78840 SRX 16218 Radiant Bronze 44522
每行(每条记录)包含 4 个数据字段:型号名称字符串、5 位库存编号和颜色,以及价格整数。字段之间的分隔符是制表符(“\t”)。
在 main() 中,创建一个 Cadillac 对象数组,从文件中读取一条记录,将其拆分为 4 个字段,创建一个 Cadillac 对象并将其添加到数组中。
- 库存文件发生变化,无论文件中有多少记录,您的程序都需要工作。您可以保证文件中的记录永远不会超过 100 条(它们只能容纳 100 辆汽车),并且每条记录将包含 4 个有效数据字段。
- 用户可以通过两种方式搜索库存:按型号名称和按价格。加载库存后,询问用户他们想要进行的搜索。如果他们指示“按型号名称”,请让他们输入要搜索的名称。有效的型号名称为:DTS、Escalade、ESV、EXT、SRX、STS 和 XLR。搜索具有该名称的所有汽车的库存,并在控制台屏幕上显示结果表。
-当用户表示要按价格搜索时,让他们输入要搜索的价格,然后执行搜索,显示所有价格在搜索价格3000美元以内的汽车。- 程序应该循环执行用户想要的尽可能多的搜索。当被问及他们想要执行的搜索类型时,让用户通过单击“取消”按钮来结束程序。第二个问题(要搜索的型号或价格)上的“取消”按钮不应结束程序,但您的代码应将其识别为无效条目,并且不会引发异常。除了列表输出之外,程序中的所有输入和输出都应该带有 JOptionPane 对话框。
这是我到目前为止所拥有的:
import java.util.Scanner;
import java.io.*;
public class Inventory {
public static void main ( String[] args )
{
String line;
String[] fields;
String[] items;
int count = 0;
int recCount;
Cadillac[] list = new Cadillac[100];
try
{
BufferedReader br = new BufferedReader( new FileReader( "inventory.dat" ) );
line = br.readLine();
while( line != null )
{
fields = line.split( "\t" );
items[count++] = new Cadillac( fields[0], fields[1], fields[2],
fields[3] );
line = br.readLine();
}
br.close();
}
catch( IOException e )
{
System.out.println( "Can't open input file. Program terminating." );
System.exit( 1 );
}
}
public static int loadArray(Cadillac[] items)
{
}
}
class Cadillac {
//Instance data
private String model;
private String stockNum;
private String color;
private int price;
//Constructor
public Cadillac(String mdl, String stckNum, String clr, int prc)
{
model = mdl;
stockNum = stckNum;
color = clr;
price = prc;
}
//Set of Accessor and Mutator Methods
public String getModel(){
return model;
}
public void setModel(String newModel){
model = newModel;
}
public String getStockNum(){
return stockNum;
}
public void setStockNum(String newStockNum){
stockNum = newStockNum;
}
public String getColor(){
return color;
}
public void setColor(String newColor){
color = newColor;
}
public int getPrice(){
return price;
}
public void setPrice(int newPrice){
price = newPrice;
}
}
请帮忙!我不知道该怎么做。