首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java输入/输出

Java输入/输出
EN

Stack Overflow用户
提问于 2014-04-25 09:17:44
回答 2查看 233关注 0票数 0

我正在尝试建立一个简单的预订系统。我从输入中读取行,在完成项目之前将它们写入输出文件。

我的输入就像

ADDTRAIN,Cumhuriyet,区域,80,90,50,40 ADDTRAIN,Baskent,Express,80,90,1 ADDTRAIN,Baskent,Express,80,90,50,40

如果一列火车和另一列火车同名,我必须写“命令失败.列车名称:.”

我用逗号将它们分开,然后为列车创建一个数组列表。

代码语言:javascript
复制
File text = new File();
    PrintWriter writer = new PrintWriter();
    Scanner scnr = new Scanner(text);
  
    while(scnr.hasNextLine()){
       
        String line = scnr.nextLine();
        String[] atts = line.split(",");
        if(atts[0].equals("ADDTRAIN"))
        {
            train.add(new Train(atts[0],atts[1],atts[2],atts[3],atts[4],atts[5],atts[6]));
        }

    for(int i= 1; i<train.size(); i++)
    {
        writer.print(train.get(i-1).Writer());
        if(train.get(i).getTrainName().equals(train.get(i-1).getTrainName()))
        {
            writer.print(train.get(i).WrongWriter());
        }
    }
    
    scnr.close();
    writer.close();

我只能检查前一行。例如,如果我的输入类似于

ADDTRAIN,Cumhuriyet,区域,80,90,50,40 ADDTRAIN,Baskent,Express,80,90,1 ADDTRAIN,Baskent,Express,80,90,50,40 ADDTRAIN,Cumhuriyet,区域,80,90,50,40

我的程序没有写一个“命令失败”行输出。我该如何解决这个问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-25 09:21:01

您应该使用HashMap来存储数据: Key=TrainName,Value=TrainObject。使用HashMap既简单又有效地检查/不允许重复

if(trainMap.contains(trainName){ System.out.println("Error - train already exists"); }

票数 3
EN

Stack Overflow用户

发布于 2014-04-25 09:30:03

如果您不想使用HashMap (这是一个很好的解决方案),可以使用两个循环。

代码语言:javascript
复制
for(int i = 0; i<train.size(); i++)
{
    writer.print(train.get(i).Writer());
    for(int j = 0; j<train.size(); ++j)
    {
        if (i==j) continue;
        if(train.get(i).getTrainName().equals(train.get(j).getTrainName()))
        {
            writer.print(train.get(i).WrongWriter());
            break;
        }
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23288977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档