2017-11-15 12 views
-1

사용자가 JOptionPane에서 옵션 중 하나를 선택하기를 원합니다. 그런 다음 if 문에서 해당 옵션을 사용하려고합니다. 그러나 어떻게해야할지 모르겠다.if 문에서 사용자가 JOptionPane에서 선택한 옵션을 사용하는 방법은 무엇입니까?

import javax.swing.JOptionPane; 
public class MortgageCalculator { 

    public static void main(String[]args) 
    { 
     JOptionPane.showMessageDialog(null, "Lets calculate your mortgage",null, JOptionPane.PLAIN_MESSAGE); 

     double principle = Double.parseDouble(JOptionPane.showInputDialog(null, "What is your loan amount?")); 

     int years = Integer.parseInt(JOptionPane.showInputDialog(null,"Enter the lenght of your loan")); 
     int n = years * 12; 

     double rate = Double.parseDouble(JOptionPane.showInputDialog(null, "What is your interest rate?")); 

     String[] options = new String[] {"Compound", "Simple"}; 

     int response = JOptionPane.showOptionDialog(null, null, "Choose your interest type", JOptionPane.DEFAULT_OPTION, JOptionPane.PLAIN_MESSAGE,null, options, options[0]); 

     //I want to use my selected option here. 
     if(options ==compound) 
     { 
      double payment = (compound(principle,years,rate))/n; 

     } 
     else 
     { 
      double payment = (simple(principle, years, rate))/n; 
     } 
    } 

    public static double simple(double principle, int n , double interestRate) 
    { 
     double interest = principle * n * (interestRate/100); 
     double totalLoan = principle + interest; 
     return totalLoan; 
    } 

    public static double compound(double principle, int years, double interestRate) 
    { 
     int n = years * 12; 
     double base = (principle* (1+ (interestRate/100)*1/n)); 
     double amount = Math.pow(base, n); 
     return amount; 
    } 

, BTW이 완전한 코드가 아닙니다 : 다음은 내 코드입니다. 구문이 없습니다. 도움 주셔서 감사합니다.

답변

0

단추가 문자열 배열의 대화 상자에 제공된 경우 해당 단추를 선택하면 해당 단추 이름이 반환되는 배열 내에있는 인덱스 값입니다.

화합물는 1의 인덱스 값을 반환 0 대화에서 및 단순의 인덱스 값을 리턴한다.

// Compound (0) 
if(response == 0) { 
    double payment = (compound(principle,years,rate))/n; 

} 
// Simple (1) 
else { 
    double payment = (simple(principle, years, rate))/n; 
} 

확인 응답 변수의 값 ....하지 옵션.