Java 如何将输出语句转换为字符串类型?

Java 如何将输出语句转换为字符串类型?,java,string,class,oop,Java,String,Class,Oop,正在尝试在JOptionPane对话框中打印一些星号。 现在我有一个空函数在我的星类中做星工作: public void setStars(){ for (int j = 0; j < column; j++){ if (j % 2 == 0) System.out.print("\n"); else System.out.print("\n "); for(int i = 0; i

正在尝试在JOptionPane对话框中打印一些星号。 现在我有一个空函数在我的星类中做星工作:

public void setStars(){

    for (int j = 0; j < column; j++){
        if (j % 2 == 0)
            System.out.print("\n");

        else
            System.out.print("\n ");
        for(int i = 0; i < row; i++)
            System.out.print("* ");
    }
}

任何可能的移动方法都可以在for循环中生成这些输出语句,并将它们作为类字符串返回?

您需要做的就是返回一个字符串,而不是使用void方法,并且在打印时只需将其附加到StringBuilderPS:使用StringBuilder而不是String+=。。。因为后者真的,真的很慢

public String setStars(){

    StringBuilder sb = new StringBuilder();

    for (int j = 0; j < column; j++){
        if (j % 2 == 0)
            sb.append("\n");

        else
            sb.append("\n ");
        for(int i = 0; i < row; i++)
            sb.append("* ");
    }

    return sb.toString();
}
公共字符串setStars(){
StringBuilder sb=新的StringBuilder();
对于(int j=0;j
那么你想在对话框上打印星形图案吗?是的@exexzian这很好,我不知道string Builder我怎么会使用string+=?我尝试过类似的方法,如果替换了StringBuilder sb=new StringBuilder(),它只需打印一个星号即可;字符串str=“”;并用str+=。。。并返回str;最后但是,不要这样做。串海螺。在Java中的速度真的很慢!
public String setStars(){

    StringBuilder sb = new StringBuilder();

    for (int j = 0; j < column; j++){
        if (j % 2 == 0)
            sb.append("\n");

        else
            sb.append("\n ");
        for(int i = 0; i < row; i++)
            sb.append("* ");
    }

    return sb.toString();
}