2014-02-17 2 views
-1

이 작업을 수행 할 수 없습니다. 나는 내가하려고하는 것을 희망적으로 설명 할 메모를 썼다. 콘솔 라인 totalCost = totalCost.add(new BigDecimal(result));Java에서 BigDecimal에 BigDecimal을 추가하십시오.

private void btn_motherboardActionPerformed(java.awt.event.ActionEvent evt) {             

    String cost = cb_motherboard.getSelectedItem().toString(); 
    //gets item from combobox. Makes a string 
    Components.addElement(cost);// adds string to model 
    lb_computer_components.setModel(Components);//sets model to jlist 

    String result = cost.substring(cost.lastIndexOf('£') + 1); 
    //creates a substring containing information after £ (for example 45.99) 

    totalCost = totalCost.add(new BigDecimal(result)); 
    //totalcost is a public bigdecimal, i want to add 45.99 to it in this example 

    String BD = totalCost.toString(); 
    //change the new totalcost to a string 

    String stringTotal = n.format(BD); 
    //format that string to a currency 

    txt_total_computer.setText(stringTotal); 
    //output that string to a textfield 

}   
+0

varibles의 값을보기 위해 인쇄물을 사용해 보았습니까? – user2097804

+5

무엇이 오류입니까? computer.INterface.btn_motherboardActionPerformed (INterface.java:2324) – Radiodef

+0

죄송합니다 아, 스레드에서이 예외처럼 시작 "AWT-EventQueue의-0"? 또는 오류가 암시하는 것처럼 null입니까? – user3320339

답변

0

totalCost가 null 때문에이가 있어요에서 오류를 출력 한 다음 당신은 그것을 참조하는 객체를 사용하려고하고 있습니다.

당신이해야 할 일은 클래스의 생성자에이 줄을 추가하는 것입니다.

totalCost = BigDecimal.ZERO; 
+0

고맙습니다. bigdecimal의 전역 변수 버전을 초기화하는 방법을 알지 못했습니다. 나는 기본적인 질문이 너무 짜증기를 바란다. – user3320339