我有问题,我需要在不同人群之间组织我的常见问题解答Men ---> Young --> Working --> Not Working ---> OldWoman --> Young --> Working --> Not Working --> Old为此,我使用具有不同数组的FAQControllerString Qmen[] = new String[12];String Qwomen[] = new String[12];String QmenOld[] = new String[12];String QmenYoung[] = new String[12];String QwomenOld[] = new String[12];String QwomenYoung[] = new String[12];String QmenYoungWorking[] = new String[12];String QmenYoungNotWorking[] = new String[12];....之前的Q是问题答案的相同数组例如:AmanYoung []之后,我像这样填充问题/答案 Qmen[0] = "How to contact ?"; Rmen[0] = "Call at number XXXXX";所有这些人口之间存在非常不同的问题,最近出现了两个新人口,即男人->年轻->不工作->驾驶员/非驾驶员用所有这些人口来组织所有这些问题太复杂了您有新的方法吗?使用Api吗?谢谢你的帮助 最佳答案 首先,除非您有特殊原因要知道会有12个问题,而且不超过12个问题,否则我将使用List 而不是Arrays。其次,您没有使用Java的任何面向对象功能。我至少会(访问者可见性为简单起见留空):class FaqEntry{ String question; String answer; public FaqEntry(String question, String answer) { this.question = question; this.answer = answer; }}enum PopulationWithState { MenYoungWorking, MenYoungNotWorking;}然后将问题存储在以下内容中:Map<PopulationWithState, List<FaqEntry>> faq = new HashMap<>();//Fetch list of questions for a type. Return a new List if no questions existfaq.computeIfAbsent(PopulationWithState.MenYoungNotWorking, k-> new LinkedList<>()).add(new FaqEntry("Question here", "Answer here"));faq.computeIfAbsent(PopulationWithState.MenYoungNotWorking, k-> new LinkedList<>()).add(new FaqEntry("Question 2 here", "Answer 2 here"));//Fetch a particular listList<FaqEntry> menYoungNotWorking = faq.computeIfAbsent(PopulationWithState.MenYoungNotWorking, k-> new LinkedList<>());
07-24 15:36