【问题标题】:Adding entries to a java directory将条目添加到 java 目录
【发布时间】:2014-04-14 20:00:08
【问题描述】:

我的 java 编程课程有一个项目到期。该计划是创建一个目录来跟踪学生、教师和工作人员。项目已经完成,但是我的教授希望我们已经有一些条目(所以他不必全部输入)。既然已经完成了,我有点不确定如何添加这些。有人告诉我我可以读/写文件并将其添加到我的树形图中,但我不确定如何。我也被告知我可以在构造函数中添加一些。谁能帮我这个?项目目录部分的代码如下。

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;

public class Directory {
static Map<String, Person> schoolDirectory = new TreeMap<>();

static public void addPerson(final Person person) {
    if (person != null)
        schoolDirectory.put(person.getKey(), person);
}

static Person removePerson(final String key) {
    return schoolDirectory.remove(key);
}

static Person retrievePerson(final String key) {
    return schoolDirectory.get(key);
}

static Iterator<Person> getMemberInformation(Predicate filter) {
   List<Person> members = new ArrayList<Person>();
    if (schoolDirectory.size() > 0) {
        for (Person person : schoolDirectory.values()) {
            if(filter.test(person))
                members.add(person);            }
        return members.iterator();
    }
    return null;
}

static Map<String, Person> getFilingSystem() {
    return new TreeMap<>(schoolDirectory);
}

static void setFilingSystem(Map<String, Person> data) {
    schoolDirectory = data;
}

static void loadDirectory(){
    Database.restore();
}
}

【问题讨论】:

  • "谁能帮我解决这个问题?"是一个非常糟糕的问题。哪个部分不工作?
  • 一切正常,我只是不知道如何将信息添加到目录中,因此程序启动时它就在那里,而不必手动添加。

标签: java directory


【解决方案1】:

你可以简单地添加一个构造函数,现在你的构造函数是一个默认构造函数,它什么都不做(阅读更多关于构造函数的信息)。

    public Directory(){
        //add whatever you want
    }

你在这个构造方法中的任何内容,都会在你每次初始化一个新的 Directory 对象时发生,例如:

    Directory tree = new Directory() 

所以每个新的 Directory 对象都将始终使用相同的默认数据进行初始化

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-07
    • 2018-05-22
    • 2011-11-06
    • 2019-11-03
    • 1970-01-01
    • 2013-12-07
    相关资源
    最近更新 更多