• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 206
  • Last Modified:

Help creating a method that obtains payments interactively.

Hi, I am new in java. this is my first semester taking it, and it is starting to get a little confusing for me.
I have created two classes: Lawn, and LawnService.The following code are the methods that
corresponds to the LawnService class.
public void processLawn() {

        Lawn myLawn = new Lawn();

I can figure out how to code the second method (getNumberOfPayments) This is what i coded: - the instructions, or what I am being asked to do, is also pasted -

Create a method, public void getNumberOfPayments(), with the Lawn object reference as an argument
*  The payment option will be obtained from the user interactively with the following options.
    This should use the input dialog box of the jOptionPane class.
      A) One Payment,  B) Two Payments, C) Twenty Payments.

public void getNumberOfPayments(Lawn myLawn) {
        String userInput;
        char selection;
        int number = 0;

        userInput = JOptionPane.showInputDialog(null, "\tOne Payment (A)\n\tTwo Payments (B)\n\tTwenty Payments (C)");
        selection = userInput.charAt(0);
        if (selection == 'A') {
            number = 1;
        } else if (selection == 'B') {
            number = 2;
        } else if (selection == 'C') {
            number = 20;

Then, I have to display the payment Information with the Lawn object reference as an argument displayPaymentSummary(myLawn);
Display a jOptionPane message dialog box that tells the user the size of the lot and the number of payments and the amount of the payment. Here are some sample outputs:

"Your lot is 425 sq. ft. and you will be making one payment of $700.00"
"Your lot is 800 sq. ft. and you will be making twenty payments of $53.50"

All dollar amounts must be properly formatted, using an appropriate class from the java.text package
Use a StringBuffer to format display String.

This is what I have done so far, but eventhough is not complete, is not working, I was doing it on phases:

public void displayPaymentSummary(Lawn myLawn) {

        double area = myLawn.obtainArea();
        double payment = myLawn.obtainPaymentAmount();

        JOptionPane.showMessageDialog(null, "Your lot is " +
                area + "sq. ft. and you will be making twenty payments of " + payment);

If you can offer me any help on this, it will be great. I know this is a long question, but any help is very much appretiated it.
Thank you so much in advance.


  • 2
1 Solution
Use the NumberFormat class to do your formatting.

JOptionPane.showMessageDialog(null, "Your lot is " +
                area + "sq. ft. and you will be making twenty payments of " + NumberFormat.getCurrencyInstance().format(payment));

you can do similiar for the area
getLawnSizes(myLawn); this method u can do as you have done for getNumberOfPayments method

for displaying the summary u just need to format the paymentamount
you can check out this for formatting the payment
itortuAuthor Commented:
The parts of code that I pasted, are not working. I forgot to mention that. Sorry.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now