Я беру вопросы из пользовательского ввода, который сканируется для информации, и я сохраняю информацию и исходный вопрос.Java чтение прошлых сохраненных переменных
Каков наилучший способ сохранить вопрос +, чтобы он мог быть вызван, чтобы я мог прочитать 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<>();
, тогда я могу добавить вопрос в качестве первой части информации.
Ваша забота о том, какую структуру использовать? или где хранить их в заданном типе приложения? – VirtualTroll
Да, я хочу услышать мнение других людей о том, что они выглядят лучше, чем мои, и я не уверен, следует ли сохранять их как одиночные .txt или отдельные. – Greg
Я предполагаю, что вы считаете, что «Map 'для возможности поиска информации по строке вопроса. Если это полезно, вы можете создать как «Map », так и «List », и когда вы создадите новый экземпляр 'QuestionInfo', добавьте его как к карте, так и к списку. Затем вы сможете искать ответы как по индексу int, так и по строке вопросов. –
hinerm