如何返回多个字符串?

时间:2013-04-09 12:37:18

标签: java return-value

我正在制作一个程序来给你一张牌,但我不确定为什么它不会退回牌。这是我的类Builder生成随机卡的方法:

public static String hand(){

String card = Builder();
String card2 = Builder();
String card3 = Builder();
String card4 = Builder();
String card5 = Builder();

out.println("Your hand is: ");
out.println( card );
out.println( card2 );
out.println( card3 );
out.println( card4 );
out.println( card5 );

return card;
return card2;
return card3;
return card4;
return card5;

4 个答案:

答案 0 :(得分:1)

我建议你尽快阅读“ Head first core java ”。
您只能从方法返回一个值。如果您仍然希望将所有变量设置为给定卡片,请遵循以下方法。在这种情况下,您甚至不需要返回单个值(请参阅返回类型为void)。一切都在方法中设定。

class Play {
    String card;
    String card2;
    String card3;
    String card4;
    String card5;

    public void hand() {
        this.card = builder();
        this.card2 = builder();
        this.card3 = builder();
        this.card4 = builder();
        this.card5 = builder();
    }

    private static String builder() {
        // return random card
        return null;  //temporary set to null

    }
}

答案 1 :(得分:1)

不,你不能返回多个值。
但是你可以发送一个包含所有字符串的字符串数组。

要声明方法,请尝试以下方法:

Public String[] hand() {
String card = Builder();
String card2 = Builder();
String card3 = Builder();
String card4 = Builder();
String card5 = Builder();
return new String[] {card, card2, card3, card4, card5};
}

答案 2 :(得分:0)

返回String数组:

return new String[] {card, card2, card3, card5, card5};

修改

要使其工作,您必须将方法的返回类型更改为String[]

我推荐Java Tutorial on defining methods

答案 3 :(得分:0)

您只能返回一个值,为什么不返回String数组

return new String[] {card, card2, card3, card4, card5};