ArrayList 的 ArrayList - 使用 EL 访问值

发布于 2024-11-27 04:52:43 字数 154 浏览 2 评论 0原文

我有一个 Arraylist< 的 Arraylist String>'s,我正在尝试访问字符串值。假设我想访问 jsp 文件中第二个 ArrayList 中的第三个字符串,但我想在不编写脚本的情况下使用 EL 来完成此操作。这是正确的吗? ${anArrayList[2][3]}

I have an Arraylist of Arraylist< String>'s and I am trying to access a string value. Say I wanted to access the third String in the second ArrayList in my jsp file, but I wanted to do it without scripting, using EL. would this be correct? ${anArrayList[2][3]}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

月下客 2024-12-04 04:52:43

几乎是正确的。数组索引以 0 开头,而不是您想象的那样以 1 开头。在普通 Java 代码中一直都是这种情况,在 EL 中也没有什么不同。因此,要获取第二个列表和第三个字符串,您分别需要索引 12。因此,这应该可以

${anArrayList[1][2]}

...假设您已经将 ${anArrayList} 放置在所需的范围内。例如,在请求范围内借助预处理servlet

List<List<String>> anArrayList = createItSomehow();
request.setAttribute("anArrayList", anArrayList);
// ...
// I'd invent a more self-documenting variable and attribute name though.

顺便说一句,您熟悉Javabean?这听起来很像你更需要一个 List

Almost correct. Array indexes start with 0, not 1 as you seem to think. This has always been the case in normal Java code and this is not different in EL. So, to get the second list and then the third string, you need respectively the indexes 1 and 2. So, this should do

${anArrayList[1][2]}

...assuming that you've already placed ${anArrayList} in the desired scope. For example, in the request scope with help of a preprocessing servlet:

List<List<String>> anArrayList = createItSomehow();
request.setAttribute("anArrayList", anArrayList);
// ...
// I'd invent a more self-documenting variable and attribute name though.

By the way, are you familiar with Javabeans? This smells much that you rather need a List<Entity>.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文