【发布时间】:2013-12-19 16:23:47
【问题描述】:
我正在从正在扫描信息的用户输入中获取问题,并且我正在保存信息和原始问题。
保存问题+信息的最佳方式是什么,以便可以回忆它,以便我能够在刚刚提出的问题之前阅读 X 个问题并获取其中的信息/变量?
An example:
[User]"what is 1+1?"
[Reply]"two"
save information: "what is 1+1","two"
[User]"how is the dog?"
[Reply]"fine"
save information:"how is the dog?",subject = "dog", condition = "fine"
getQuestion(1) -> "what is 1+1?"
getInformation(current) -> subject = "dog" condition = "fine"
另外,使用 int(问题 X)、字符串(问题)或其他方式来调用每个问题的信息会更好吗?
到目前为止的代码:
Map<String,String> variable = new HashMap<>();
public QuestionInfo(String name,String variable) {
this.variable.put(name, variable);
}
public String get(String name){
if(variable.containsKey(name)) {
return variable.get(name);
} else {
return "";
}
}
我虽然关于使用:
Map<String,QuestionInfo> Questions = new HashMap<>();
首先,但如果我想打电话,我不能使用 int 所以改为:
Map<Integer,QuestionInfo> Questions = new HashMap<>();
然后我可以将问题添加为第一条信息。
【问题讨论】:
-
您关心的是使用什么结构?或者在给定的应用程序类型中将它们存储在哪里?
-
是的,我想听听其他人对结构的想法,看看他们的声音是否比我的好,我不确定是保存为单个 .txt 文件还是单独的文件
-
我假设您考虑使用
Map<String,QuestionInfo>通过问题字符串查找信息的能力。如果这很有用,您可以同时创建Map<String,QuestionInfo>和List<QuestionInfo>,并在创建新的QuestionInfo实例时将其添加到地图和列表中。然后您将能够通过 int index 和问题字符串查找问题。
标签: java file io save stanford-nlp