[英]How can i count the “count” or iteration or Calls of a method when comparing iterative and recursive methods.?
我想寫一個程序來按順序計算數字。 並計算它被調用的次數。 我既不選擇選擇隱式/遞歸單選按鈕也不知道如何在方法之間進行切換。 我可以在主體中僅使用if語句嗎? 我注釋掉了一些舊錯誤,所以請忽略注釋
類型為Abstract Button的方法addActionListener(ActionListener)不適用於參數(Sequence)LINE33
令牌上的語法錯誤,請刪除這些令牌。LINE17-我很確定我需要在Actionlistener上使用它
類型不匹配:無法從JTextField轉換為double。LINE46
令牌“ double”的語法錯誤,@預期第49行
package sequence;
import java.awt.*;
import java.awt.event.*;
import java.io.IOException;
import javax.swing.*;
public class Sequence extends JFrame implements ActionsListener{
private static final double function=0;
private JTextField number=new JTextField(20),result=new JTextField(20),efficiency=new JTextField(20);
private static JRadioButton iterative= new JRadioButton("Iterative");JRadioButton recursive= new JRadioButton("Recursive");
private JButton compute = new JButton("Compute");
public Sequence(){
super (“Function Efficiency”);
setSize(350,250);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container contentPane = getContentPane();
contentPane.setLayout(new GridLayout(6,2));
//add(new JLabel("Iterative Method"));add(form1);
ButtonGroup group = new ButtonGroup();
group.add(iterative);
group.add(recursive);
//add(new JLabel("Recursive Method"));add(form2);
add(new JLabel("Enter N"));add(number);
add(new JLabel(""));add(compute);
add(new JLabel("Result: "));add(result);
add(new JLabel("Efficiency :"));add(efficiency);
efficiency.setEditable(false);
compute.addActionListener(this);
}
public void actionPerformed(ActionEvent event){
result.setText(result.getText());
efficiency.setText(number.getText());
//double efficiency=0;
}
private double iterativemethod (){number.getText();
if (iterative.isSelected()) {
for(double i=1;i<=0;i++)
{
double result=Double.parseDouble(number.getText())*2+Double.parseDouble(number.getText());
}
return result;
}
private static double recursivemethod (){
double number1=number.getText();
if (number1<=1)
return number1;
return recursivemethod(number-1);
}
}
public static void main(String[] args) {
Sequence frame = new Sequence();
frame.setVisible(true);
if (iterative.isSelected()) {
}
}
}
碼
private static double recursivemethod (double number){ // Add argument
double number1=Double.pareseDouble(number.getText()); // Parse Double
if (number1<=1)
return number1;
return recursivemethod(number-1);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.