2016-04-27 18 views
-1

私の目的は、キーボードから費用と実際の経費の説明を読んでからYESまたはNOを尋ねることです。もしYESならば、それはループして別の費用の説明と費用を求めますすべての費用とユーザーの入力の合計数を追加します。私ははいを押した場合、その後:オプションは何も私はちょうど反転あなたのロジックが見えYesまたはNoオプションを使用したJavaのループ

public static double budgetAmount; 
public static int totalExpenses; 
public static String expenseDescription; 
public static int expense; 
public static boolean proceed; 
public static String value; 
public static double runningTotal; 
public static int answer; 

public static void main(String[] args) { 

    String bdgtAmnt1 = JOptionPane.showInputDialog("Enter Budget Amount:"); 
    budgetAmount = Double.parseDouble(bdgtAmnt1); 
    do { 

    expenseDescription = JOptionPane.showInputDialog("Enter the description of the Expense in 32 letters"); 
    String expense1 = JOptionPane.showInputDialog("Enter Expense Amount:"); 
    budgetAmount = Double.parseDouble(expense1); 
    if (answer == JOptionPane.YES_OPTION) runningTotal += expense; 
    totalExpenses++; 

    answer = JOptionPane.showConfirmDialog(null, "Are there any more items to be entered?", "End Expense Report", JOptionPane.YES_NO_OPTION); 

    if (answer == JOptionPane.YES_OPTION) 
     System.exit(0); 
    else if (answer == JOptionPane.NO_OPTION) 
     System.out.println("One more time"); 

    } while(answer == JOptionPane.YES_OPTION); 
} 
+0

あなたのコードを見て、あなたがそこで何をしていると思ったことがありますか?最初に 'answer'がyesであるかどうかをチェックし、その場合はプロセス全体をkillします。そして、後でそれをチェックしてループを実行しますか?これはあなたに理にかなっていますか? – Tom

+0

なぜあなたはSystem.exit(0)をやっていますか?もし答えがYesならば。私はあなたがそのケースをループし続けたいと思った。 –

+0

ええ、はい私はそれを終了することを知っている私ははい笑をクリックすると、私はどのようにトップに戻るループを知らない...したがって、私はここにいる。ウルはとてもスマートかもしれませんが、どうすればいいのか教えてください:) – JavaSpawn101

答えて

1

これまでHERESに私が持っているもののトラブル

を開始するために戻って[はい]オプションをループを持っていますされている場合、私は何をすべきか知っています私は、リスト内の複数の項目を入れておく必要があります... だからこれを変更:

if (answer == JOptionPane.YES_OPTION) 
    System.exit(0); 
else if (answer == JOptionPane.NO_OPTION) 
    System.out.println("One more time"); 

のために:

if (answer == JOptionPane.NO_OPTION) 
    System.exit(0); 
else if (answer == JOptionPane.YES_OPTION) 
    System.out.println("One more time"); 
+0

OHHHHHHH待ってくださいSystem.out.println( "もう一度");それはそこになければなりませんか?その目的は何ですか? – JavaSpawn101

関連する問題