在java中返回String []

时间:2013-01-12 04:11:59

标签: java string compilation return

如何在Java中返回数组String?我不断收到错误消息,说我无法从String转换为String [],但它不应该尝试这样做。我对CS很陌生,所以我不太确定。这是我的班级文件:

public class questionOrder {
    public String[] order(int x, String W, String X, String Y, String Z){
           String f = W;
           String g = X;
           String h = Y;
           String j = Z;

    switch(x){

        case 1: String[] ar = {f,g,h,j};
        return ar;

    }
    }

}

2 个答案:

答案 0 :(得分:5)

如果x != 1,那么switch语句将不匹配,并且return ar将不会被执行,因此您的函数不会返回任何内容。我不确定您为什么会收到有关将String转换为String[]的错误,但我怀疑这是您未在代码段中发布的内容的结果。

添加以下内容以使其编译:

switch (x) {
    case 1:
        String[] ar = {f, g, h, j};
        return ar;
    default:
        return new String[0];
}

答案 1 :(得分:0)

请参阅此示例我已尝试并已执行:

public class QuestionOrder {
public String[] order(int x, String W, String X, String Y, String Z){
       String f = W;
       int g = x;
      // g.toString();
      String h1 = Integer.toString(g);

       String h = Y;
       String j = Z;
  String[] ar=new String[] {f,h1,h,j};;

return ar;
}



public static void main(String[] args) throws Exception{
    try{
QuestionOrder q=new QuestionOrder();
String[] str=q.order(2,"e","r","t","y");
for (int i=0;i<str.length ;i++ )
{
    System.out.println(str[i]);
}

}catch(Exception e){}   }

}