Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从地图中显示一个键及其值<;字符串,列表<;对象>&燃气轮机;每次在JSP页面上?_Javascript_Java_Jsp_For Loop_Collections - Fatal编程技术网

Javascript 如何从地图中显示一个键及其值<;字符串,列表<;对象>&燃气轮机;每次在JSP页面上?

Javascript 如何从地图中显示一个键及其值<;字符串,列表<;对象>&燃气轮机;每次在JSP页面上?,javascript,java,jsp,for-loop,collections,Javascript,Java,Jsp,For Loop,Collections,我正在做一个测验项目,我想一次展示一个问题和它各自的选项。我已经创建了一个DB,通过使用HQL,我将该数据带到JSP页面。我已经把数据放进去了 地图。我正在使用entrySet迭代映射。现在我可以在JSP页面上显示所有问题及其选项,但我想一次显示一个问题及其选项,单击下一个按钮时,我想显示下一个问题及其选项等等 我在Jsp页面上的代码是: <% Map<String, List<Answers>> map = new HashMap<String, List&

我正在做一个测验项目,我想一次展示一个问题和它各自的选项。我已经创建了一个DB,通过使用HQL,我将该数据带到JSP页面。我已经把数据放进去了 地图。我正在使用entrySet迭代映射。现在我可以在JSP页面上显示所有问题及其选项,但我想一次显示一个问题及其选项,单击下一个按钮时,我想显示下一个问题及其选项等等

我在Jsp页面上的代码是:

<%
Map<String, List<Answers>> map = new HashMap<String, List<Answers>>();
map = (Map)session.getAttribute("questAndAns");

%>  

<%
for(Map.Entry<String,List<Answers>> entry : map.entrySet())
{
%>
<br>
<%
List list =  entry.getValue(); 
if(list != null && list.size() > 0)
for(int i = 0 ; i < list.size(); i++)
{
 Answers answers =(Answers) list.get(i);
%>
<%= answers.getAnswer() %>


0) 对于(int i=0;i
地图中的字符串包含一个问题,列表是该特定问题的选项。 我怎样才能做到呢

谢谢你的帮助。
提前感谢。

您可以使用
map.keySet()
获取所有问题。然后使用
map.get(key)
获取选项列表

Set<String> questions = map.keyset();
for(String q : questions) {
    List<Answers> answers = map.get(q);
    . . . 
}
Set questions=map.keyset();
for(字符串q:问题){
列表答案=map.get(q);
. . . 
}

我认为您应该使用如下类将每个问题及其可能的答案封装在一个专用对象中:

public class Question {
    private String text;
    private List<String> options;
    // getters and setters ...
}
公开课问题{
私有字符串文本;
私人名单选择;
//接球手和接球手。。。
}
然后,您可以将
问题
对象存储在
列表
映射
中,这样每个对象都有一个标识符(数字或字符串)。加载页面时,您可以使用给定的标识符(作为请求参数传递或由其他逻辑给定)检索
问题
并将其作为页面/请求属性传递

我希望我理解了这个问题,这会有所帮助

在一个旁注中,考虑使用JSPs而不是普通java代码。< /P>