25. september 2003 - 11:02Der er
9 kommentarer og 2 løsninger
resultat kan ikke returneres
hej
Forsøger at lave en simpel regnemaskine, der kan plusse og trææke fra, men kan ikke få den til at returnere resulatet. fejlmeddelelsen: 'Cannot return a value from method whose result type is void'
Du har lavet actionperformed, den har header public void ... void betyder den ikke returnerer noget. Hvis den skal returnere et tal skal header være f.eks public int ...
Men det kan du nok ikke her, da det er en foruddefineret funktion du bruger.
De steder hvor der står 'return value;' skal væk. Desuden kan en java funktion ikke udføre noget efter du har brugt return, altså er: return answer; result.setText(answer); forkert, da result.setText(answer); aldrig kan blive udført. Slet linien med return answer; så virker det. import java.applet.Applet; import java.awt.*; import java.awt.event.*;
public class SimCalc extends Applet implements ActionListener {
private Button plusButton = new Button("plus"); private Button minusButton = new Button ("minus"); private Button clearButton = new Button("Slet"); private IntTextField operand = new IntTextField(); private IntTextField operand2 = new IntTextField(); private Label result = new Label(" (ingenting) ", Label.CENTER);
public void init() { add(operand); add(operand2); add(plusButton); add(minusButton); add(clearButton);
toString() tager én int som parameter, så du skal skrive: (Jeg er ikke helt sikker, et stykke tid siden, men mener du kan skrive) String result = number1 + " Plus " + number2 + " = " + answer;
hvis ikke, så er du nødt til at konvertere hvert tal: String num1 = new Integer(number1).toString(); String num2 = new Integer(number2).toString(); String answ = new Integer(answer).toString(); String result = num1 + " plus " + num2 + " = " + answ;
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.