Java system.out.print para imprimir JOptionPane.ShowMessageDialog

Como posso imprimir a mensagem system.out.print em um JOptionPane.ShowMessageDialog Eu preciso que ele execute o loop for e, fora do loop for, eu preciso que ele seja exibido dentro de uma caixa JOptionPane.ShowMessageDialog. Estou realmente triturada por tempo. Eu apreciaria muito qualquer ajuda. Obrigado

    public static void main(String[] args) {

    //A. Enter the Number Of Loans to compare
    String numberOfLoansString = JOptionPane.showInputDialog("Enter the Number Of Loans to Compare"); 
    //Convert numberOfLoansString to int
    int numberOfLoans = Integer.parseInt(numberOfLoansString);

    //B. Enter the Selling Price of Home
    String sellingPriceString = JOptionPane.showInputDialog("Enter the Loan Amount");
    //Convert homeCostString to double
    double sellingPrice = Double.parseDouble(sellingPriceString);

    //C. Enter the Down Payment on the Home
    String downPaymentString = JOptionPane.showInputDialog("Enter the down payment on the Home");
    double downPayment = Double.parseDouble(downPaymentString);

    //Get the loanAmount by Subtracting the Down Payment from homeCost
    double loanAmount = sellingPrice - downPayment;

    //D. Ask the following for as many number of loans they wish to compare
    //D1 Get the interest rate
    double[] annualInterestRatesArray = new double[numberOfLoans];
    double[] monthlyInterestRateArray = new double[numberOfLoans];
    int[] numberOfYearsArray = new int[numberOfLoans];
    double[] monthlyPaymentArray = new double[numberOfLoans];
    double[] totalPaymentArray = new double[numberOfLoans];
    int counter = 1;

    for (int i=0; i < numberOfLoans; i++)
    {
        String annualInterestRateString = JOptionPane.showInputDialog("Enter the interest rate for Scenario " + counter);
        double annualInterestRate = Double.parseDouble(annualInterestRateString);
        annualInterestRatesArray[i] = (annualInterestRate);

        //Obtain monthly interest rate
        double monthlyInterestRate = annualInterestRate / 1200;
        monthlyInterestRateArray[i] = (monthlyInterestRate);

        //D2 Get the number of years
        String numberOfYearsString = JOptionPane.showInputDialog("Enter the number of years for Scenario " + counter);
        int numberOfYears = Integer.parseInt(numberOfYearsString);
        numberOfYearsArray[i] = (numberOfYears);

        //Calculate monthly payment
        double monthlyPayment = loanAmount * monthlyInterestRate / (1 - 1 / Math.pow(1 + monthlyInterestRate, numberOfYears * 12));
        //Format to keep monthlyPayment two digits after the decimal point
        monthlyPayment = (int)(monthlyPayment * 100) / 100.0;
        //Store monthlyPayment values in an array
        monthlyPaymentArray[i] = (monthlyPayment);

        //Calculate total Payment
        double totalPayment = monthlyPaymentArray[i] * numberOfYears * 12;
        //Format to keep totalPayment two digits after the decimal point
        totalPayment = (int)(totalPayment * 100) / 100.0;
        totalPaymentArray[i] = (totalPayment);

        counter++;
    }

    StringBuilder sb = new StringBuilder();
            for (int i = 0; i < numberOfLoans; i++) {
                sb.append(String.format("\n", sellingPrice, downPayment, loanAmount, annualInterestRatesArray[i], numberOfYearsArray[i], monthlyPaymentArray[i]));
            }
    String toDisplay=sb.toString();

    JOptionPane.showMessageDialog(null, sb.toString(), toDisplay, JOptionPane.INFORMATION_MESSAGE);


}

Alguma razão pela qual isso não está funcionando?

questionAnswers(3)

yourAnswerToTheQuestion