Posted by: pat February 17, 2007
java help
Login in to Rate this Post:     0       ?        
Hi..everyone...I have created this simple java calculator for addition and subtraction. Can anyone help me get the result till 40 decimal places when necessary...Right now it works till 15-16 decimal places but how do i change that to 40.... Thanks.... import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.lang.Object; public class Calculator extends JFrame implements ActionListener { public static final int WIDTH= 400; public static final int HEIGHT= 175; private JTextField inputField; private JTextField inputField1; private JTextField outputField; private double sum=0; private String sumString; private JLabel label1,label2, label3, label4; public static void main (String [] args) { Calculator guiCalculator = new Calculator(); guiCalculator.setVisible(true); } public Calculator() { setTitle ("Java Calculator"); setSize(WIDTH, HEIGHT); Container contentPane = getContentPane(); contentPane.setLayout (new GridLayout()); JPanel textArea = new JPanel(); textArea.setBackground(Color.green); textArea.setLayout(new FlowLayout()); label1 = new JLabel( "Enter 1st Number Here" ); textArea.add( label1 ); inputField = new JTextField("", 15); inputField.setBackground(Color.white); textArea.add(inputField); label2 = new JLabel( "Enter 2nd Number Here" ); textArea.add( label2 ); inputField1= new JTextField("",15); inputField1.setBackground(Color.WHITE); textArea.add(inputField1); JPanel buttonPanel = new JPanel(); buttonPanel.setBackground(Color.GRAY); buttonPanel.setLayout(new GridLayout()); JButton addButton = new JButton("Add"); addButton.addActionListener(this); buttonPanel.add(addButton); JButton resetButton = new JButton("Reset"); resetButton.addActionListener(this); buttonPanel.add(resetButton); JButton subtractButton = new JButton("Subtract"); subtractButton.addActionListener(this); buttonPanel.add(subtractButton); Panel b = new Panel(); b.setLayout(new GridLayout(1,3)); b.add(addButton); b.add(subtractButton); b.add(resetButton); textArea.add(b); contentPane.add(textArea, BorderLayout.CENTER); outputField = new JTextField("Result", 30); outputField.setBackground(Color.WHITE); textArea.add(outputField); label3 = new JLabel( "Java Calculator"); textArea.add( label3 ); } public void actionPerformed (ActionEvent e) { try { if(e.getActionCommand().equals("Add")) { sum = stringToDouble(inputField.getText()) + stringToDouble(inputField1.getText()); String sumString = Double.toString(sum); outputField.setText(sumString); } if(e.getActionCommand().equals("Subtract")) { sum = stringToDouble(inputField.getText()) - stringToDouble(inputField1.getText()); String sumString = Double.toString(sum); outputField.setText(sumString); } if (e.getActionCommand().equals("Reset")) { sum = 0; inputField.setText("0.0"); inputField1.setText("0.0"); outputField.setText("0.0"); } } catch (Exception exception) { sum = 0; inputField.setText("Enter Only Numbers"); inputField1.setText("Enter Only Numbers"); outputField.setText("0.0"); } } private static double stringToDouble(String stringObject) { return Double.parseDouble(stringObject.trim()); } }
Read Full Discussion Thread for this article