java-如何在switch case中返回数组中的多个值

时间:2015-04-21 04:12:23

标签: java

我想返回满足上面代码中if语句的所有数组元素。

这里输出是满足if条件的第一个元素。

switch(ch) {
     case 1: {
        g = prob1 * totoutcome;
        flag = (int) g;
        for(int i=0; i<9; i++) {
             if(a1[0][0].equals(veh[i]) && flag > 0) {  
              flag--;
              return(id[i] + " " + name[i] + " " + number[i] + " " + veh[i] + " " + color[i] + " " + type[i] + "\n");
             }
     }
     break;
}

2 个答案:

答案 0 :(得分:2)

return意味着回到调用你的函数(而不是返回并返回另一个函数)来携带返回的变量。

要实现你想要的......你可以创建一个列表,添加元素以返回列表并在结束for循环后返回列表。

答案 1 :(得分:0)

     ArrayList<String> aa = new ArrayList<String>();
     ArrayList<String> ab = new ArrayList<String>();
     ArrayList<String> ac = new ArrayList<String>();
     ArrayList<String> ad = new ArrayList<String>();
     ArrayList<String> ae = new ArrayList<String>();
for(.....)
{
if()
{
                             aa.add(name[i]);
                             ab.add(number[i]);
                             ac.add(veh[i]);
                             ad.add(color[i]);
                             ae.add(type[i]);
}

}
return(aa+ab+ac+ad+ae);