2011-06-08 113 views
6
 String t1 = request.getParameter("t1"); 
     String t2 = request.getParameter("t2"); 

     List<String> terms = new ArrayList<String>(); 
     for (int i = 1; i < 51; i++) { 
      terms.add(t + i); 
     } 

想象一下,我有变量t1到t50,是否有可能使用计数器循环每个t?像上面的东西,但obvi不起作用。将字符串添加到列表 - Java

回答

11

你不需要临时变量,t1,t2等,否则你是在正确的轨道上。

List<String> terms = new ArrayList<String>(); 
    for (int i = 1; i < 51; i++) { 
     terms.add(request.getParameter("t" + i)); 
    } 
1
terms.add(request.getParameter("t" + i)); 

在你的代码被添加到列表中的字符串,是一个不存在的变量t contatenated /与i

5

总结不,你不能“构建”变量名类似在Java中(事实上,在运行时本地变量甚至没有任何名称)。

你可以,但是,摆脱完全的变量,并调用getParameter()用适当的值:

List<String> terms = new ArrayList<String>(); 
    for (int i = 1; i < 51; i++) { 
     terms.add(request.getParameter("t" + i); 
    } 
3

你能不能做到这一点?

for (int i = 1; i < 51; i++) { 
    terms.add(request.getParameter("t" + i)); 
} 
5

而是所有的临时单变量的只是抢在一个循环中参数:

List<String> terms = new ArrayList<String>(); 
    for (int i = 1; i < 51; i++) { 
     terms.add(request.getParameter("t"+ i)); 
    } 
0

你不能简单地遍历变量。但是,为什么不制作一个数组(字符串[]),或者如果您事先不知道大小,甚至可以使用ArrayList。那么你甚至不需要循环,并且可以以几乎相同的方式访问所有变量?!

相关问题