JAVA:如何将消息框与多个输出组合起来

JAVA:如何将消息框与多个输出组合起来,java,swing,joptionpane,Java,Swing,Joptionpane,我正在学习Java,有一个相当简单的程序,它可以根据规则返回一系列数字。我可以将它输出到控制台中,或者有许多弹出的JOptionPane.showMessageDialog()窗口,每个窗口中都有一个数字 如何组合JOptionPane.showMessageDialog(),在一个JOptionPane.showMessageDialog()中显示所有输出 代码: package collatz; import java.util.Random; import javax.swing.*;

我正在学习Java,有一个相当简单的程序,它可以根据规则返回一系列数字。我可以将它输出到控制台中,或者有许多弹出的
JOptionPane.showMessageDialog()
窗口,每个窗口中都有一个数字

如何组合
JOptionPane.showMessageDialog()
,在一个
JOptionPane.showMessageDialog()中显示所有输出

代码:

package collatz;

import java.util.Random;
import javax.swing.*;

public class Collatz {

/**
 * Demonstrates the Collatz Cojecture
 * with a randomly generated number
 */

public static void main(String[] args) {
    Random randomGenerator = new Random();
    int n = randomGenerator.nextInt(1000);

    JOptionPane.showMessageDialog(null, "The randomly generated number was: " + n);


    while(n > 1){
        if(n % 2 == 0){
            n = n / 2;
            JOptionPane.showMessageDialog(null, n);
        }
        else{
            n = 3 * n + 1;
            JOptionPane.showMessageDialog(null, n);
        }
    }

    JOptionPane.showMessageDialog(null, n);
    JOptionPane.showMessageDialog(null, "Done.");

}

}
谢谢

--
ZuluDeltaNiner

跟踪要显示的完整字符串,然后在末尾显示:

public static void main(String[] args) {
    Random randomGenerator = new Random();
    int n = randomGenerator.nextInt(1000);

    StringBuilder output = new StringBUilder("The randomly generated number was: " + n + "\n");

    while(n > 1){
        if(n % 2 == 0){
            n = n / 2;
        }
        else{
            n = 3 * n + 1;
        }
        output.append(n + "\n");
    }

    output.append("Done.");
    JOptionPane.showMessageDialog(null, output);

}

使用a比连接到
字符串更好。正确,更改以反映更好的编程实践。感谢helloworld922和@Andrew Thompson!